批量删除多条记录,对于比较多的信息,如果没有批量删除功能是非常麻烦的。

1.从数据库中拿一张表过来,写个复选框进行选择

可以加全选复选框

连接数据库什么的都不写啦

代码:

<form action="piliangshanchu.php" method="post" ><table border="1" cellspacing="0" cellpadding="0">  <tr>    <td width="200">      <input type="checkbox" value="""" name="dx" onclick="checkall(this)" />      编号</td>    <td width="200">姓名</td>    <td width="200">电话</td>    <td width="200" >分组</td>    <td width="200" >操作</td>  </tr><tr>    <td>    <input type="checkbox" value="{$attr[0]}" name="item[]" class="ck" />    {$attr[0]}</td>     <td>{$str}</td>    <td>{$attr[2]}</td>    <td>{$nation}</td></tr></table>  <input type="submit" value="批量删除"/>  </form>

外加一个批量删除按钮

上图:

我如果点击全选,利用js点击事件就可以轻松实现全选

代码:

<script>  function xxx(qx)  {//全选多选的选中状态    var ck = document.getElementsByClassName("ck"); //让下面所有的多选选中状态改变    if(qx.checked)    {      for(i = 0;i < ck.length ; i++)      {        ck[i].setAttribute("checked","checked");//状态改变为选中      }    }    else    {      for(var i = 0;i < ck.length;i++)      {        ck[i].removeAttribute("checked");//移除选中      }    }  }</script>

2.删除的处理页面

代码:

<?php$arr = $_POST["item"];$db = new mysqli("localhost","root","12345678","heiheihei");//foreach($arr as $v)//{//  $sql = "delete from contacts WHERE id="{$v}"";//  $db->query($sql);//}$str = implode("","",$arr);//拼接字符,$sql = "delete from contacts WHERE id in("{$str}")";//2","8","4if($db->query($sql))//判断是否查询成功,{  header("location:shouye.php");  //成功就跳转}?>

用foreach数据传输过慢,删除遍历繁多,因此直接判断;