dongwupu5991 2010-07-20 12:42
浏览 74
已采纳

如何一次删除多条记录?

In Php as we all know, there are no inbuilt controls by itself like Asp.Net's GridView etc. I am using Html's <table> to build up the grid and keep the row's id in one hidden field. I've also placed one checkbox at the beginning of each row and a delete button at the bottom of the grid. The problem i face is, how do i get all the id's that are checked so that i can pass those ids in my IN clause of Delete?

  • 写回答

3条回答 默认 最新

  • duangelin7513 2010-07-20 12:47
    关注

    First you name all your checkboxes by suffixing [] in their name so that an array gets created, later this is how you can get those that are checked and act accordingly:

    for($i = 0; $i < count($_POST['checks']); $i++)
    {
      if (isset($_POST['checks'][$i]))
      {
         // this was checked !!
      }
    }
    

    Where checks is the name of all those checkboxes eg:

    <input type="checkbox" name="checks[]" value="1" />
    <input type="checkbox" name="checks[]" value="2" />
    <input type="checkbox" name="checks[]" value="3" />
    

    And this is how you can get those for your IN clause in your query:

    $checked_array = array();
    
    for($i = 0; $i < count($_POST['checks']); $i++)
    {
      if (isset($_POST['checks'][$i]))
      {
         $checked_array[] = mysql_real_escape_string($_POST['checks'][$i]);
      }
    }
    
    // build comma separated string out of the array
    $values = implode(',', $checked_array);
    

    Now you can use the $values in your IN clause of your query.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算