我需要存档这样的内容:
$array['0']="ID='1'";
$array['1']="ID='2'";
mysql_query("SELECT * FROM users WHERE {$array}");
这是一个特殊情况,这只是一个例子;我并不担心这里的安全性,因为最终用户没有传递任何价值。数组值是自动生成的,可以是任何大小,因此我无法手动传递它们。
答案 0 :(得分:2)
仅将值存储在数组中。
$array = ('aaa', 'bbb', 'ccc');
mysql_query("SELECT * FROM users WHERE ID IN ('".implode("','", $array)."')");
这会将阵列粘在一起并输出一些像:
mysql_query("SELECT * FROM users WHERE ID IN('aaa','bbb','ccc')");
如果你只使用整数,你可以省略'
。但是任何与字符串相关的东西都需要它们在SQL语句中,因此最好从getgo中使用它们。
如果你检查了其他的东西,你可以用AND
或OR
进行调整,具体取决于你想要检查它们的方式,并可能将它们放在不同的数组中
mysql_query("SELECT * FROM users WHERE ID IN ('".implode("','", $array_1 )."') OR name IN ('".implode("','", $array_2 )."')");