我有一个循环通过id循环。由于其他原因,for循环没有执行。
$med_uuids = $_POST['med_uuids'];
$med_uuids_length = count($med_uuids);
for($x=0; $x < $med_uuids_length; $x++){
$query = mysqli_query($connection, "DELETE FROM medicine WHERE uuid =
'$med_uuids[$x]'");
}
//close connection to db
mysqli_close($connection);
任何帮助都将不胜感激。
答案 0 :(得分:2)
你没有数组,只是一个字符串。
$ids = explode(',', $_POST['med_uuids']); // make an array
foreach ($ids as $id) {
mysqli_query($connection, "DELETE FROM medicine WHERE uuid = '" . mysqli_real_escape_string($connection, $id) . "'");
}
答案 1 :(得分:0)
如果你得到一个像这样的逗号分隔列表(124,121,45,12,35),那么你可以做这样的事情
DELETE FROM medicine WHERE uuid IN (124,121,45,12,35)
这将帮助您一次完成任务,您的数据库不会被多个查询阻塞。