douchi0028 2014-03-21 10:36
浏览 15
已采纳

按国家/地区过滤来自mysql的数据

I want to filter my data by countries from a dropdown menu:

<form name="filter_form" method="POST" action="display_data.php">
Select a country:
<select name="value">
    <option name="country" value="AU">Austria</option>
    <option name="country" value="BE">Belgium</option>
    <option name="country" value="BU">Bulgaria</option>
</select>
<input type="submit" name="btn_submit" value="Submit Filter" />
<?php
if($_POST['country'] == 'BE') {  

    $query = mysql_query("SELECT * FROM think WHERE Country='Belgium'");  
}  
elseif($_POST['country'] == 'AU') { 
 $query = mysql_query("SELECT * FROM think WHERE Country='Austria'");  
} else {  
    $query = mysql_query("SELECT * FROM think");  
}  
?>

The code does not filter any data. If anyone can help, thanks!

  • 写回答

4条回答 默认 最新

  • 普通网友 2014-03-21 10:50
    关注

    Avoid writing redundant code. Change your code with below code:

    <form name="filter_form" method="POST" action="display_data.php">
    Select a country:
    <select name="country">
        <option value="AU">Austria</option>
        <option value="BE">Belgium</option>
        <option value="BU">Bulgaria</option>
    </select>
    <input type="submit" name="btn_submit" value="Submit Filter" />
    
    <?php
    if(isset($_POST['country']))
    {
        switch($_POST['country'])
        {
        case 'BE' : $countryName = 'Belgium';
                    break;
        case 'AU' : $countryName = 'Austria';
                    break;
        default : $countryName = '';
                  break;
        }
        $where = '';
        if($countryName != '')
        {
            $where = "WHERE Country='".$countryName."'";
        }   
        $query = mysql_query("SELECT * FROM think ".$where."");  
    }
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line