PHP实现批量删除(封装)

yipeiwu_com5年前PHP代码库

前台

<!DOCTYPE html>
<html>
<head>
  <title>批量删除</title>
</head>
<body>
<script type="text/javascript">

//复选框
function checkall(all)
{
  var ck = document.getElementsByClassName("ck");

  if(all.checked)
  {
   for(var 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>

<form action="test.php" method="post">
<table border="1">
  <tr><th><input type="checkbox" name="all" onclick="checkall(this)"/>id</th><th>名字</th></tr>

<!-- 此处调用显示列表函数 -->
<?php show() ?>

<tr><td colspan="3"><input type="submit" value="批量删除"></td></tr>
</table>
</form>
</body>

<?php 

//显示列表
function show()
{
  //连接数据库
  @mysql_connect('localhost','root','');
  mysql_select_db('test');
  mysql_query('set names utf8');

  $sql = "select id,name from test";
  $res = mysql_query($sql);

  //循环取出数据
   while($row = mysql_fetch_row($res))
    {
     echo "<tr>
      <td>
       <input type='checkbox' value='{$row[0]}' name='item[]' class='ck' />
       {$row[0]}
     </td>
      <td>{$row[1]}</td>
    </tr>";
    }
  }
?>
</html>

后台

<?php 

//接收post传来的数组
$arr = $_POST["item"];

/**
* 批量删除 
* 思路:把前台批量选择的数据放在数组里,删除该数组即可 
* @param $arr <array()> 
* @return $res 成功or失败
*/
function batch_del($arr)
{
  @mysql_connect('localhost','root','');
  mysql_select_db('test');
  mysql_query('set names utf8');

  //把数组元素组合为字符串:
  $str = implode("','",$arr);
  //in 表示多个
  $sql = "delete from test where id in('{$str}')";
  $res = mysql_query($sql);

  if (!$res){
      echo "删除失败";
    }else {

      if (mysql_affected_rows()>0){
        echo "删除成功";
      }else {
        echo "没有行受到影响";  
      }
    } 
  }

//调用批量删除函数

batch_del($arr);

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持【宜配屋www.yipeiwu.com】!

相关文章

PHP的Laravel框架中使用AdminLTE模板来编写网站后台界面

PHP的Laravel框架中使用AdminLTE模板来编写网站后台界面

AdminLTE 是一个基于Bootstrap 3.x的免费高级管理控制面板主题,完全响应式管理,适合从小型移动设备到大型台式机很多的屏幕分辨率。 AdminLTE的特点: 充分...

php多进程应用场景实例详解

本文实例讲述了php多进程应用场景。分享给大家供大家参考,具体如下: pcntl介绍 扩展介绍 php多进程模块依赖pcntl扩展,官方手册介绍:http://php.net/manua...

php如何实现只替换一次或N次

 我们都知道,在PHP里Strtr,strreplace等函数都可以用来替换,不过他们每次替换的时候都是全部替换,举个例子: "abcabbc",这个字符串如果使用上边的函数来...

PHP利用一行代码删除目录下所有文件方法示例

前言 想必很多人都会写几行甚至几十行代码使其列出所有文件变为数组进行删除,但是glob函数分分钟解决问题!下面来一起看看详细的介绍吧。 glob语法说明: array glob (...

PHP中常用的三种设计模式详解【单例模式、工厂模式、观察者模式】

本文实例讲述了PHP中常用的三种设计模式。分享给大家供大家参考,具体如下: PHP中常用的三种设计模式:单例模式、工厂模式、观察者模式 1.单例模式 为何要使用PHP单例模式? 多数...