视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
如何用php ajax实现批量删除功能
2020-11-02 18:26:24 责编:小采
文档


php ajax实现批量删除的方法:首先引入bootstrap的模态框和数据库表;然后创建“批量删除”按钮的html部分;最后使ajax连接到批量删除的PHP处理页面即可。

推荐:《PHP视频教程》

PHP jQuery+Ajax结合写批量删除功能

为了美观,我还是引入了bootstrap的模态框,我引入的是自己的数据库 library中的一张表 名为:maninfo表 是一张个人信息表表的加载我就不写了,比较简单, 大概写一下需要的按钮和html部分就可以了

<button type="button" class="btn btn-primary" id="plscdz" >批量删除</button>

全选:

<input type="checkbox" id="cq"/>

遍历出来的复选框为

<input type="checkbox" value="{$v[0]}" class="cq"/>

首先是全选按钮点击之后可以把遍历的复选框全部选中

<script type="text/javascript">
 $("#cq").click(function(){
$(".cq").prop("checked",$(this).prop("checked"));
})
</script>

这里我只写了一个简单的模态框

<div class="modal fade" id="myModal11" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
 <div class="modal-dialog">
 <div class="modal-content">
 <div class="modal-header">
 <button type="button" class="close" data-dismiss="modal" aria-hidden="true">
 ×
 </button>
 <h4 class="modal-title" id="myModalLabel">
 提示
 </h4>
 </div>
 <div id="qrnr1" class="modal-body">
 您将删除选中的图书!
 </div>
 <div class="modal-footer">
 <button id="qxplsc" type="button" class="btn btn-default" data-dismiss="modal">取消删除</button>
 <button id="qrplsc" type="button" class="btn btn-primary">确认批量删除</button>
 </div>
 </div><!-- /.modal-content -->
 </div><!-- /.modal -->
 </div>
 </div>

这样前端的内容就完成了,这样就开始写js部分了,我全部用的是jquery

var chk = "";
 var check2 = "";
 //判断多个复选框中的某一个是否被实现
 function checked(){
 var count = 0;
 var checkx = $("#cq");
 if(checkx.checked)
 {
 check2=1;//选中全选按钮
 }
 else
 {
 check2=0;//没选中全选按钮
 }
 var checkArry = $(".cq");
 for (var i = 0; i < checkArry.length; i++)
 {
 if(checkArry[i].checked == true)
 {
 //选中的操作
 count++;
 }
 }
 if( count == 0 )
 {
 chk=0;//没有选中项
 }
 else
 {
 chk=1;//有选中项
 }
 //alert(chk);
 }
 function plscdzxx()
 {
 //批量删除
 $("#plscdz").click(function(){
 checked();
 if(chk==1 || check2==1){// 提交
 $('#myModal12').modal('show');
 $("#nqrplsc").click(function(){/*给确认删除按钮加事件*/
 $('#myModal12').modal('hide');
 //找选中的主键值,用循环遍历选中的主键值
 var cq =$(".cq");
 var plstr ="";
 for(var i=0;i<cq.length;i++)
 {
 if(cq.eq(i).prop("checked"))
 {
 plstr+=cq.eq(i).val()+"','";
 }
 }
 plstr= plstr.substr(0,plstr.length-3); //分隔符占3个字符,截取字符串,去掉最后的"','",这样正好匹配SQL语句
 $.ajax({
 async:false,
 url:"plscdz.php",
 data:{plstr:plstr},
 dataType:"TEXT",
 type:"POST",
 success:function(data){
 if(data.trim()=="OK")
 {
 alert("删除成功");
 nload(); //在这里要重新加载一遍页面
 }
 else
 {
 alert("删除失败");
 }
 }
 });
 });
 }
 else if(chk==0)
 {
 // 不提交
 //alert(chk);
 alert("请选择您要删除的内容");
 }
 })
 }

ajax会连接到批量删除的处理页面 ,下面就是批量删除的处理页面了

<?php
session_start();
include("DBDA.class.php");
$db = new DBDA();
if(!empty($_POST["plstr"]))
{
 $plstr = $_POST["plstr"];
 $sql = "delete from maninfo where id in ('{$plstr}')";
 if($db->Query($sql,0))
 {
 echo "OK";
 }
 else
 {
 echo "NO";
 }
}

写到这儿 如果您要是自己尝试的话,可能不运行,这就需要把批量删除的方法给调一下,前面有加载的方法的话,那就直接把批量删除的方法写到加载方法里面调用就可以了

下载本文
显示全文
专题