我最初有这个工作:
网址:http://server/blah.php?FacilityCode=FT
$facilitycode = mysql_real_escape_string($_GET["FacilityCode"]);
$sql = "SELECT ..." .
"FROM ..." .
"WHERE ..." .
"AND ('" . $facilitycode . "' = '' OR Facility.FacilityCode = '". $facilitycode . "')";
$result = mysql_query($sql);
但我想更改此设置,以便人们可以以某种方式提交查询中的多个值,即:
http://server/blah.php?FacilityCode=FT,CC,DD,EE
我尝试将查询更改为“ IN”子句,而不是“ equals”,但是我不确定如何在每个元素周围获取'标记。
最佳答案
将implode()
功能用于IN(...)。
$a = array('AB', 'CD', 'EF', 'ZE');
echo "field IN ('" . implode("', '", $a) . "')";
...将输出:
field IN ('AB', 'CD', 'EF', 'ZE')
+转义您获得的每个选项。