使用复选框删除多行

时间:2015-10-26 19:26:48

标签: php mysql

我试图使用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();
}

?>

1 个答案:

答案 0 :(得分:0)

快速但不安全的解决方案:

 $sql = 'DELETE FROM product WHERE id IN ('.implode(',',$multiple).' )';

 mysql_query($sql) or die(mysql_error());