UPDATE多个ID中的PDO预准备语句
本教程将介绍UPDATE多个ID中的PDO预准备语句的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。
问题描述
我正在开发一个简单的购物系统,并使用PDO
。
但我似乎不能在使用多个值进行更新时使用PDO.
查看此处:
// GET MESSAGES ID AND REPLACE '-' WITH ','
$mid = explode("," , str_replace( '-' , ',' , $mid ));
$isread = "read";
$stmt = $conn->prepare("UPDATE `mshop_pms` SET `readperm` = ? WHERE `mid` IN (?)");
$stmt->execute(array($isread, array($mid)));
我怎么才能做到这一点?并执行以下操作:
$stmt->execute(array($isread, $mid));
不分解,只更新第一行。
推荐答案
它不会以这种方式工作。您需要迭代分解数组,然后继续更新。
举个例子:
// GET MESSAGES ID AND REPLACE '-' WITH ','
$mid = explode(",", str_replace('-', ',', $mid));
$isread = "read";
$stmt = $conn->prepare("UPDATE `mshop_pms` SET `readperm` = :readperm WHERE `mid` = :mid");
//now update and iterate
foreach ($mid as $m) {
$s->bindParam(':readperm', $isread);
$s->bindParam(':mid', $m);
$s->execute();
}
好了关于UPDATE多个ID中的PDO预准备语句的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。