我试图使用php在我的表中选择和删除多行。每当我选择检查多行以进行删除时,我都会收到此错误"您的SQL语法出错;检查与您的MySQL服务器版本相对应的手册,以获得正确的语法,以便在' id 5'附近使用。在第1行"。当我单独检查我的复选框时,我能够删除单行。这是我的代码的片段:
<?php
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("mydatabase") or die(mysql_error());
if (isset($_GET['delete'])){
$multiple = $_GET['multiple'];
$i = 0;
$sql = "DELETE FROM product ";
foreach ($multiple as $item_id) { $i ++;
if ($i == 1){
$sql .= " WHERE id = " . mysql_real_escape_string($item_id) . "";
} else{
$sql .= "OR id ". mysql_real_escape_string($item_id) . "";
}
}
mysql_query($sql) or die(mysql_error());
header("location: " . $_SERVER['PHP_SELF']);
exit();
}
?>
答案 0 :(得分:0)
快速但不安全的解决方案:
$sql = 'DELETE FROM product WHERE id IN ('.implode(',',$multiple).' )';
mysql_query($sql) or die(mysql_error());