我正试图找出如何将数组变量与where子句一起使用。
当我回显$deader时,得到23、25、43、56、31、24、64、34等。。这些是我要更新的身份证号码

$sql = mysql_query("UPDATE users SET dead='DEAD' WHERE userID ='(".$deader.")' ");

数组$deader有多个id号值,它只工作并更新$deader数组中的第一个id。
我读到内爆是我所需要的,但不知道如何将其转化为函数格式。

最佳答案

使用WHERE ... IN

$sql = mysql_query("UPDATE users SET dead='DEAD' WHERE userID IN (".$deader.")");

其中$deader是逗号分隔格式。(例如:$deader = '143, 554, 32'
如果它是一个数组,则可以使用$deader = implode(',', $deader);使其以逗号分隔。
注:
请停止对新代码使用mysql\ux*函数。这些功能不再被维护,社区已经开始了弃用过程。有关将此转换为PDO的详细信息,请参见此处:How do I convert a dynamically constructed ext/mysql query to a PDO prepared statement?(感谢PeeHaa)

10-07 21:19