Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用复选框使用PHP过滤MySQL查询_Php_Mysql_Sql_Filter - Fatal编程技术网

使用复选框使用PHP过滤MySQL查询

使用复选框使用PHP过滤MySQL查询,php,mysql,sql,filter,Php,Mysql,Sql,Filter,我在一家酒店管理公司的网站上工作。在公文包页面上,我现在有一张谷歌地图,上面列出了所有精确定位的酒店,还有一张来自数据库的酒店表。但是,我想要一个带有复选框的表格,对应于酒店品牌。选中复选框将仅显示该品牌的酒店。我只需要选择一个品牌就可以做到这一点,但不能选择多个品牌 这是表单的代码: <form> <div class="form-block"> <input type="checkbox" name="Courtyard" value="true" <?p

我在一家酒店管理公司的网站上工作。在公文包页面上,我现在有一张谷歌地图,上面列出了所有精确定位的酒店,还有一张来自数据库的酒店表。但是,我想要一个带有复选框的表格,对应于酒店品牌。选中复选框将仅显示该品牌的酒店。我只需要选择一个品牌就可以做到这一点,但不能选择多个品牌

这是表单的代码:

<form>
<div class="form-block">
<input type="checkbox" name="Courtyard" value="true" <?php if (isset($_GET["Courtyard"])) { echo "checked"; } ?> /> Courtyard<br />
<input type="checkbox" name="HolidayInnExpress" value="true" <?php if (isset($_GET["HolidayInnExpress"])) { echo "checked"; } ?> /> Holiday Inn Express<br />
<input type="checkbox" name="BestWestern" value="true" <?php if (isset($_GET["BestWestern"])) { echo "checked"; } ?> /> Best Western<br />
</div>
<div class="form-block">
<input type="checkbox" name="CrownePlaza" value="true" <?php if (isset($_GET["CrownePlaza"])) { echo "checked"; } ?> /> Crowne Plaza<br />
<input type="checkbox" name="HolidayInn" value="true" <?php if (isset($_GET["HolidayInn"])) { echo "checked"; } ?> /> Holiday Inn<br />
<input type="checkbox" name="SpringhillSuites" value="true" <?php if (isset($_GET["SpringhillSuites"])) { echo "checked"; } ?> /> Springhill Suites<br />
</div>
<div class="form-block">
<input type="checkbox" name="HamptonInn" value="true" <?php if (isset($_GET["HamptonInn"])) { echo "checked"; } ?> /> Hampton Inn<br />
<input type="checkbox" name="HomewoodSuites" value="true" <?php if (isset($_GET["HomewoodSuites"])) { echo "checked"; } ?> /> Homewood Suites<br />
<input type="checkbox" name="Independent" value="true" <?php if (isset($_GET["Independent"])) { echo "checked"; } ?> /> Independent Properties<br />
</div>
<button type="submit">Filter</button>

/>快捷假日酒店
/>皇冠假日酒店 />斯普林希尔套房酒店 />霍姆伍德套房酒店
最简单的方法是使用
,其中。。。在()中
查询,而不是像
这样的
。e、 g

$brands = array('Brand X', 'Brand Y');
$sql = "SELECT ... WHERE Brand in ('" . implode("','", $brands) . "');";
请注意,这只是一个例子。它容易受到SQL注入攻击,不应按原样使用。

。它们不再得到维护。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果您选择PDO。
$brands = array('Brand X', 'Brand Y');
$sql = "SELECT ... WHERE Brand in ('" . implode("','", $brands) . "');";