扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
?php
潍坊网站建设公司创新互联,潍坊网站设计制作,有大型网站制作公司丰富经验。已为潍坊千余家提供企业网站建设服务。企业网站搭建\成都外贸网站建设公司要多少钱,请找那个售后服务好的潍坊做网站的公司定做!
if ( $_GET['xzdel'] == 1 ) { //这里要使用比较运算符 == , 而不是赋值运算符 =
$N_ID = join(',', $_POST['BoxUser'] ); //$_POST本身是一个数组, 要达到批量删除的话, 这里应该要将BoxUser已数组形式提交, 那么,这个时候就是个二维数组, 那么$_POST['BoxUser']得到的还是一个数组, 那么,为了适应sql语句的语法, 把数组转换成以逗号为分隔符的字符串, 因为sql语句的in关键词只能接受如 1, 2, 3这样的参数,不能直接接受数组, mysql没有数组的概念
if ( $db - delete( 't_nws', 'where n_id in(' . $N_ID . ')' ) ) {
alert('删除成功', 'new_list.php');
die;
} else {
echo $sql;
}
}
以上是php部分,其他部分有空给你研究研究
表单部分:
input name='BoxUser' type='checkbox' value='".$row['n_id']."'
这个name属性,要以数组的形式进行提交, 这样, php才会将你勾选的所有参数给提交
否则php只能接收到其中的一条
那么,应该改成
input name='BoxUser[]' type='checkbox' value='".$row['n_id']."'
M('tablename')-where("id in (1,2,3,4,5)")-delete(); // 删除tablename 表中id 为1,2,3,4,5 的5条数据。要批量删除,改一下where 调教就行了。
需要注意的是, where 条件中的 id 须是表主键,或者是具有唯一索引属性的字段
一、使用phpmyadmin工具批量删除mysql数据库表
使用phpmyadmin数据库管理工具进行删除,这是一个传统的方法,在任何php虚拟主机中,你都可以操作。下面是操作过程介绍:
登录phpmyadmin。选择你的Mysql数据库名进入——点击结构——选择您要删除的数据表——“选中项”中选择删除,执行删除表操作。
二、使用php脚本完成批量删除
从网上找了一段php代码,也可以帮我们快速实现删除。如果你对phpmyadmin工具“敏感”,可以使用下面的方式来实现快速删除mysql数据库表。
1.前台
!DOCTYPE html
html
head
title批量删除/title
/head
body
scripttype="text/javascript"
//复选框
function checkall(all)
{
var ck = document.getElementsByClassName("ck");
if(all.checked)
{
for(var i=0;ick.length;i++)
{
ck[i].setAttribute("checked","checked");
}
}
else
{
for(vari=0;ick.length;i++)
{
ck[i].removeAttribute("checked");
}
}
}
/script
formaction="test.php"method="post"
tableborder="1"
trthinputtype="checkbox"name="all"onclick="checkall(this)"/id/thth名字/th/tr
!-- 此处调用显示列表函数 --
?phpshow() ?
trtdcolspan="3"inputtype="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
inputtype='checkbox'value='{$row[0]}'name='item[]'class='ck'/
{$row[0]}
/td
td{$row[1]}/td
/tr";
}
}
?
/html
2.后台
?php
//接收post传来的数组
$arr=$_POST["item"];
/**
* 批量删除
* 思路:把前台批量选择的数据放在数组里,删除该数组即可
* @param $arr
* @return $res 成功or失败
*/
functionbatch_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);
SCRIPT LANGUAGE="JavaScript"
!--
function quan()
{
if(document.getElementsByName("qx[]")[0].checked==false)
{
for(var i=0;idocument.getElementsByName("quanxuan[]").length;i++)
{
document.getElementsByName("quanxuan[]")[i].checked=false;
}
}
if(document.getElementsByName("qx[]")[0].checked)
{
for(var i=0;idocument.getElementsByName("quanxuan[]").length;i++)
{
document.getElementsByName("quanxuan[]")[i].checked=true;
}
}
}
//--
function xuan()
{
var a=new Array();
var i;
var c=0;
for(i=0;idocument.getElementsByName("quanxuan[]").length;i++)
{
if(document.getElementsByName("quanxuan[]")[i].checked)
{
a[c]=document.getElementsByName("quanxuan[]")[i].value;
c++;
/*alert(a);*/
}
}
if(a.length==0)
{
alert("请选择");
}
else
{
var ss=confirm("确定删除?");
if(ss==true)
{
location.href="shanchu.php?id="+a;
}
}
}
/SCRIPT
input type="checkbox" name="qx[]" onclick="quan();"font size="2"全选/font
a href="javascript:xuan()"选择删除/a
TABLE
TR
TD INPUT TYPE="checkbox" NAME="quanxuan[]" value="1"/TD
TDa/TD
/TR
TR
TD INPUT TYPE="checkbox" NAME="quanxuan[]" value="2"/TD
TDb/TD
/TR
TR
TD INPUT TYPE="checkbox" NAME="quanxuan[]" value="3"/TD
TDc/TD
/TR
TR
TD INPUT TYPE="checkbox" NAME="quanxuan[]" value="4"/TD
TDd/TD
/TR
TR
TD INPUT TYPE="checkbox" NAME="quanxuan[]" value="5"/TD
TDe/TD
/TR
/TABLE
传值以后 在PHP页 接值 $zhi=$_GET["a"]; 然后把 $zhi 拆分成数组
$zhi=explode(',',$zhi);
在循环删除就可以
for($i=0;$icount($idd);$i++)
{
$con-query("delete from 表名 where ajbg_bh='$zhi[$i]'");
}
?php
//先构造SQL语句
$SQL="DELETE FROM a WHERE b='123'";//删除a表中所有b字段值为123的记录
$ALL="DELETE FROM a";//删除a表中所有记录
$ALL2="TRUNCATE a";//删除a表中所有记录,(推荐使用)
//使用mysql_query命令执行SQL语句,如:
mysql_query($SQL);
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流