• php数据访问(批量删除)


    批量删除:

    首先给每一行加上复选框,也就是在自增长列内加入checkbox。因为这里可以多选,也可以单选,所以在传值的时候需要传一个数组来进行处理,所以复选框name的值设定一个数组。传值都是传的value值,so,value=索引0  。

    然后用<form>表单进行传值,在表单内添加一个提交按钮,点击提交之后,带着所选的值跳到处理界面。因为是数组,所以用表单括起来传value值(所被选中的主键值)

    <form action="plshanchu.php" method="post">
    
    <table width="100%" border="1" cellpadding="0" cellspacing="0">
        <tr>
            <td><input type="checkbox" onclick="quanxuan()" />newsid</td>
            <td>title</td>
            <td>author</td>
            <td>source</td>
            <td>content</td>
            <td>time</td>
            <td>update</td>
            <td>delete</td>
        </tr>
    
    <?php
    
    
    
        $db = new MySQLi("localhost","root","159357","newssystem");
        
        $sql = "select * from news where ".$tj." and ".$tj2;
        
        //echo $sql;
        
        $result = $db->query($sql);
        
        $attr = $result->fetch_all();
        
        foreach($attr as $v)
        {
            echo"<tr>";
            
            $newauthor = str_replace($zzz,"<mark>{$zzz}</mark>",$v[2]);
            echo "<td><input type='checkbox' name='sz[]' value='{$v[0]}' class='qx' />{$v[0]}</td>
                  <td>{$v[1]}</td>
                  <td>{$newauthor}</td>
                  <td>{$v[3]}</td>
                  <td>{$v[4]}</td>
                  <td>{$v[5]}</td>
                  <td><a href='xiugai.php?a={$v[0]}'>update</a></td>
                  <td><a href='shanchu.php?a={$v[0]}' onclick="return confirm('主人真的不要我了吗?')">delete</a></td>";
            
            echo"</tr>";
        }
    
    ?>
    
    </table>
    
    <input type="submit" value="批量删除" onclick="return confirm('真不要了吗?')" />
    
    </form>

    处理界面:

    因为传过来的是数组,所以要定义一个数组变量来进行接收。用if判断防止报错(因为直接取值取不到)。用foreach把取到的数组主键值交给一个变量V ,连接数据库,写sql语句(从news表中删除条件为选中的主键值),执行sql语句,跳转查看页面

    缺点:执行多次就要多次访问数据库。

    $attr=array();
    if(!empty($_POST["sz"]))
    {
        $attr = ($_POST["sz"]);
    }
    
    $db = new MySQLi("localhost","root","159357","newssystem");
    
    foreach($attr as $v)
    {
        
        $sql = "delete from news where newsid='{$v}'";
        
        $db->query($sql);
        
        header("location:chakan.php");
    }

    第二种方法:

    enplode:拆分字符串返回数组

    implode:将数组拼成字符串

    分割符','

    用implode方法,将取到的数组拼成字符串,放到一个变量里边。然后写sql语句(从news表中一次删除取到的字符串),返回chakan页面。

    $attr=array();
    if(!empty($_POST["sz"]))
    {
        $attr = ($_POST["sz"]);
    }
    
    $db = new MySQLi("localhost","root","159357","newssystem");
    
    foreach($attr as $v)
    {
            $atr = implode("','",$attr);
        
        $sql = "delete from news where newsid='{$atr}'";
        
        $db->query($sql);
        
        header("location:chakan.php");
    }
  • 相关阅读:
    简单自定义控件在view下可以运行在传统模式下运行显示空白
    symbian菜单2运行时更换菜单实现右键菜单功能
    得到文件路径信息 TParse
    Symbian菜单:创建一个最简单的菜单
    RFs 目录操作
    作品[RFileRead/WriteStream 练习] for s60 fp2
    对话框的练习
    文件浏览工具s60第二版
    转描述符
    得到驱动器信息
  • 原文地址:https://www.cnblogs.com/u1020641/p/6025309.html
Copyright © 2020-2023  润新知