• php批量删除


      之前我们通过php对数据库的操作,实现了对数据的简单的增删改查。今天我们继续通过php对数据库的操作,来进一步完善相关的设计,今天我们要实现批量删除功能。

      之前我们已经做出了查询页面,那么现在要实现批量删除功能,首先要给每个code前面加上复选框和相关操作按钮。我们早前已经通过遍历的方式经数据库里的内容展示出来,因此,对于复选框的设置,我们仅仅需要在此前代码的基础上,稍加设置即可轻松给每个code加上复选框并添加上操作按钮(详情见代码)。

    <form action="piliangshanchu.php" method="post">
    <table width="100%" border="1" cellpadding="0" cellspacing="0">
    <tr>
    <td>代号</td>
    <td>姓名</td>
    <td>性别</td>
    <td>民族</td>
    <td>生日</td>
    <td>操作</td>
    </tr>
    <?php
    //造对象
    $db = new MySQLi("localhost","root","123","mydb");
    //判断是否出错
    !mysqli_connect_error() or die("连接失败!");
    //写SQL语句
    $sql = "select * from Info";
    //执行SQL语句
    $result = $db->query($sql);

    //读取数据
    $attr = $result->fetch_all();

    //遍历数组,显示
    foreach($attr as $v)
    {

    $sex = $v[2]?"男":"女";

    $sql = "select Name from Nation where Code = '{$v[3]}'";
    $r = $db->query($sql);
    $a = $r->fetch_row();

    echo "
    <tr>
    <td>
    <input class='ck' name='ck[]' type='checkbox' value='{$v[0]}' /> //在此处添加一个name,在批量删除时,让他一数组的形式进行提交,这样就可以避免出错
    {$v[0]}</td>
    <td>{$v[1]}</td>
    <td>{$sex}</td>
    <td>{$a[0]}</td>
    <td>{$v[4]}</td>
    <td><a href='delete.php?code={$v[0]}'>删除</a><a href='update.php?code={$v[0]}'>修改</a></td>
    </tr>
    ";
    }
    ?>
    <tr>
    <td><input type="checkbox" onclick="CheckAll(this)" />全选</td>
    <td><input type="submit" value="批量删除" /></td>
    </tr>
    </table>
    <a href="add.php">添加数据</a>
    </form>
    </body>
    <script type="text/javascript">
    function CheckAll(a)
    {

    //根据class名来取到所有复选框的值
    var ck = document.getElementsByClassName("ck");

    //利用for循环来取得复选框的选中状态
    for(var i=0;i<ck.length;i++)
    {
      if(a.checked)
      {
        ck[i].setAttribute("checked","checked");//此处的ck[i]是取到每个checkbox的值
      }
      else
      {
        ck[i].removeAttribute("checked");
      }
    }

    }
    </script>

    在完成复选框的设置之后,就是php代码的后台执行,因此新建一个代码页面,专门用于执行php代码

    <?php
    $ck = $_POST["ck"];//数组名为ck且提交方式为post,因此在此使用post方法
    include("DBDA.class.php");
    $db = new DBDA();

    foreach($ck as $v)//ck是一个一维数组,所以每一个v代表一个主键值
    {
    $sql = "delete from Info where Code='{$v}'";
    $db->Query($sql,0);//执行mysql语句
    }

    header("location:main.php");

  • 相关阅读:
    jQuery插件之jqzoom
    python数据分析画图体验
    python正则表达式,以及应用[下载图片]
    Python 程序如何高效地调试?
    从汉诺塔游戏理解python递归函数
    Python文本文件的输入输出操作学习
    Windows搭建python开发环境
    python循环综合运用
    Python参数传递,既不是传值也不是传引用
    使用python实现用微信远程控制电脑
  • 原文地址:https://www.cnblogs.com/sdzbxfcy/p/5612129.html
Copyright © 2020-2023  润新知