使用复选框中的多个条件进行MySQL查询

时间:2010-04-22 19:53:49

标签: sql mysql search checkbox

我想使用多个复选框来执行多重搜索查询,这些复选框代表特定的文本框。

如何创建一个mysql查询,它将过滤已选中和未选中的复选框(可能使用if语句)?
查询应该能够过滤checked和ucnchecked框并使用AND条件查询它们。

由于

1 个答案:

答案 0 :(得分:1)

Mysql将无法处理您的html表单帖子。您需要使用服务器端语言来检查所设置的复选框,然后使用其他条件修改查询。

如果你更具体,你可能会得到更好的回应,但我会给你一个php的例子。假设您的表单看起来像:

<form method="post">
    <input type="checkbox" name="field1_cb" value="1" />
    <input type="text" name="field1_txt" />
    <br /><br />
    <input type="checkbox" name="field2_cb" value="1" />
    <input type="text" name="field2_txt" />
</form>

您的服务器代码可能如下所示:

$query = "SELECT * FROM tbl WHERE field0 = 'asdf' ";
$fields = array('field1','field2');
foreach($fields as $f){
    if(isset($_POST[$f.'_cb'])){
        $query .= " AND $f = ".$_POST[$f.'_txt'];
    }
}
//Run your query... 

请不要直接复制和粘贴此代码,这是令人作呕的不安全感。只是想让你开始。