Maison  >  Article  >  développement back-end  >  opération de suppression par lots php

opération de suppression par lots php

高洛峰
高洛峰original
2017-02-28 15:08:344267parcourir

La suppression de plusieurs enregistrements par lots est très gênante s'il n'existe pas de fonction de suppression par lots pour des quantités d'informations relativement importantes.

1. Obtenez une table de la base de données et écrivez une case à cocher pour sélectionner

Vous pouvez ajouter une case à cocher tout sélectionner

Connectez-vous à la base de données ou quelque chose comme ça. Pas besoin d'écrire quoi que ce soit

Code :

<form action="piliangshanchu.php" method="post" >
<table border="1" cellspacing="0" cellpadding="0">
  <tr>

    <td width="200">
      <input type="checkbox" value="&#39;&#39;" 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=&#39;checkbox&#39; value=&#39;{$attr[0]}&#39; name=&#39;item[]&#39; class=&#39;ck&#39; />
    {$attr[0]}</td> 

    <td>{$str}</td>
    <td>{$attr[2]}</td>
    <td>{$nation}</td>

</tr>


</table>

  <input type="submit" value="批量删除"/>
  </form>

Plus un bouton de suppression par lots

Photo ci-dessus :

opération de suppression par lots php

Si je clique pour tout sélectionner, je peux facilement tout sélectionner en utilisant js click event

Code :

<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. Page de traitement supprimée

Code :

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



?>

La transmission des données à l'aide de foreach est trop lente. , delete Il existe de nombreuses traversées, alors jugez directement

Pour plus d'articles liés aux opérations de suppression par lots PHP, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn