使用 PHP 中的复选框进行高级搜索


advance search using checkbox in php

我不能使用此复选框进行搜索。当我运行代码(检查)时,没有任何反应。我必须检查它以进行高级搜索,它将从数据库中选择数据。

我的HTML代码:

 <td><input type="checkbox" name="fac1" value="checked"/>AIRCOND</td>
 <td><input type="checkbox" name="fac2" value="checked"/>FAN</td>

我的PHP代码:

$fac1=isset($_POST["fac1"]);
$fac2=isset($_POST["fac2"]);
$qry = "SELECT * FROM homestay WHERE ";
 if(isset($_POST['fac1']) && $_POST['fac1'] == 'checked')
 {
        $fac1 = true;
 }
 if(isset($_POST['fac2']) && $_POST['fac2'] == 'checked')
 {
        $fac2 = true;
 }
$string = isset($_POST['fac1']) ? $_POST['fac1'] : (isset($_POST['fac2']) ? $_POST['fac2'] : '');

if(isset($_POST['fac1']) && $_POST['fac1'] == 'checked')
{
    $string = $fac1;
}
if(isset($_POST['fac1']) && $_POST['fac2'] == 'checked')
{
    $string = $fac2;
}

query中传递字符串变量:

$qry = "SELECT * FROM homestay WHERE $string = 'true'";

按照 Ronak 的建议这样做会导致多个搜索选项的代码太长。不包括下次加载页面时必须保存选中的每个选项。您可以使用 ajax 简化此操作,以便例如,它会在您的div 中显示结果。

首先制作一个表单:

<form id="searchOptions">
 <td><input type="checkbox" name="fac1" value="checked"/>AIRCOND</td>
   <td><input type="checkbox" name="fac2" value="checked"/>FAN</td>
</form>

然后将脚本放在标头中:

<script>
function submitSearchForm() {
    $.ajax({type:'POST', url: 'search.php', data:$('#searchOptions').serialize();?>, success: function(response) {
            $('#resultDisplay').innerHTML = response;
            }});
    return false;
}
</script>

通知:

你还需要在标题中 jquery.min

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>