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");
}
php数据访问(批量删除)的更多相关文章
- PHP数据访问批量删除(10261101)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- MYSQLi数据访问批量删除
<link href="../bootstrap.min.css" rel="stylesheet" type="text/css" ...
- PHP批量写入数据、批量删除数据
批量插入可以参考$sql = "insert into data (id,ip,data) values ";for($i=0;$i<100;$i++){$sqls[]=& ...
- curl post 请求 es 数据 REST 批量删除
curl -d "keyword=牛" http://api.com/path/index curl模拟http发送get或post接口测试 - 一生守候 - 博客园 http ...
- Oracle批量删除表格数据
在开发阶段往Oracle数据库中多个表格中导入了许多测试数据,倘若一张张表执行"truncate table tablename"语句显得十分繁琐.在PL/SQL中可以用代码进行批 ...
- Mybatis 实现批量插入和批量删除源码实例
Mybatis 实现批量插入数据和批量删除数据 学习内容: 准备工作 1.数据库新建表 2.新建 Maven 项目和设置编译版本及添加依赖 3.新建 db.properties 4.新建 mybati ...
- EntityFramework:支持同一事务提交的批量删除数据实现思路
一切从一段代码说起... 下面一段代码是最近我在对一EF项目进行重构时发现的. protected override void DoRemove(T entity) { this.dbContext. ...
- Hibernate 数据的批量插入、更新和删除
4.2 Hibernate的批量处理 Hibernate完全以面向对象的方式来操作数据库,当程序里以面向对象的方式操作持久化对象时,将被自动转换为对数据库的操作.例如调用Session的delete ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(18)-过滤器的使用和批量删除数据(伪删除和直接删除)
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(18)-过滤器的使用和批量删除数据(伪删除和直接删除) ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) ...
随机推荐
- jquery mobile cannot be created in a document with origin 'null' and URL
jquery mobile cannot be created in a document with origin 'null' and URL http://zhidao.baidu.com/lin ...
- 实操UNITY3D接入91SDK安卓版
原地址:http://bbs.18183.com/thread-149758-1-1.html 本文内容为创建UNITY3D接入91SDK的DEMO的具体操作过程.本人水平有限,UNITY3D与And ...
- Android 中的消息传递,详解广播机制
--------------------------------------广播机制简介--------------------------------------------- Android中的广 ...
- 遍历json对象---Java
Iterator iterator = a.keys(); while(iterator.hasNext()){ String key = (String) iterator.next(); Stri ...
- idea java 正则表达式匹配替换
原文匹配中文 excelMap.get\((\"[\u4E00-\u9F15]+\")\) 目标 excelMap.get\($1.hashCode\(\)\)
- c语言——知识点
环境: ubuntu 13.04 32位 gcc version 4.7.3 ++i,i++ 代码如下: #include <stdio.h> main() { int i; //test ...
- 安装完eos出的问题
Failed to load JavaHL Library.These are the errors that were encountered:no msvcp100 in java.library ...
- C# 类成员备忘
隐藏基类的方法 调用重写或隐藏的基类方法 嵌套的类型定义 隐藏基类的方法 当从基类继承一个(非抽象)成员时,也就继承了其实现的代码,如果继承的成员是虚拟的,就可以用Overrid重写这段实现代码, 无 ...
- c#.net对excel的操作——创建一个excel报表两个sheet就是2个表分别添加内容
添加引用:Microsoft.Office.Interop.Excel //创建excel对象,就是实例化一个excel对象 Application excel=new Appl ...
- CSS中的float与clear
参考: http://www.cnblogs.com/iyangyuan/archive/2013/03/27/2983813.html http://www.cnblogs.com/iloveyou ...