drrrdo0802 2015-10-26 19:26
浏览 40
已采纳

使用复选框删除多行

I'm trying to select and delete multiple rows in my table, using php. Whenever I select check multiple rows to make my deletion, I get this error "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'id 5' at line 1". I am able to delete single rows, when I check my checkbox, individually. here is a snippet to my code:

<?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条回答 默认 最新

  • douchuo9476 2015-10-26 19:29
    关注

    Quick but not secure solution :

     $sql = 'DELETE FROM product WHERE id IN ('.implode(',',$multiple).' )';
    
     mysql_query($sql) or die(mysql_error());
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog