首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按国家筛选mysql中的数据

问按国家筛选mysql中的数据
EN

Stack Overflow用户
提问于 2014-03-21 10:36:49
回答 4查看 286关注 0票数 0

我想从下拉菜单中按国家筛选数据:

代码语言:javascript
复制
<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");  
}  
?>

代码不过滤任何数据。如果有人能帮忙的话,谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-03-21 10:50:31

避免编写多余的代码。用以下代码更改您的代码:

代码语言:javascript
复制
<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."");  
}
?>
票数 0
EN

Stack Overflow用户

发布于 2014-03-21 10:41:36

使用select标记时,服务器页将引用select标记的名称,而不是选项。

更改代码如下:

代码语言:javascript
复制
<select name="country">
    <option value="AU">Austria</option>
    <option value="BE">Belgium</option>
    <option value="BU">Bulgaria</option>
</select>
票数 1
EN

Stack Overflow用户

发布于 2014-03-21 10:38:14

代码语言:javascript
复制
if($_POST['country'] == 'BE') {  

应该是

代码语言:javascript
复制
if($_POST['value'] == 'BE') {  

等等等等!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22556394

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档