前段时间发表了一个删除栏目的随笔,当时实现的功能是删除一条信息,这次来实现一下批量删除栏目。

我们需要达到的是这样一个效果:
选中批量删除按钮后可以选中所有该页面的栏目,这个是前端页面的实现,在这里就不多说了,我们直接进入正题:批量删除的功能。
1.前端页面这里也有一个小小的点,就是选择框的name值应给给他赋值为一个id的数组,value值为该栏目的id。
2.我们在控制器中单独写一个批量删除的方法
public function privilege_bdel(){
$ids = I('ids');
$pri = D('privilege');
$ids = implode(',', $ids);
if($ids){
if($pri->delete($ids)){
$this->success('批量删除栏目成功!',U('Privilege/privilege_lst'));
}else{
$this->error('批量删除栏目失败,请重试!');
}
}else{
$this->error('未选中任何内容,请重试!');
}
}
这里要将传过来的id数组转化为以逗号分隔的字符串如:1,2,3,这样可以直接进行delete操作。
这就是我们dump出来options的结果,这条也是我们用来判断删除时是单个删除还是批量删除的依据,如果options[where][id]是一个数组的话,则说明进行的是批量删除,否则就是单个删除。
3.在模型中对删除前构造函数的修改
public function _before_delete($options){
//批量删除
if(is_array($options['where']['id'])){
$arr = explode(',', $options['where']['id'][1]);
$sonpri = array();
foreach ($arr as $k => $v) {
$sonpri2 = $this->childid($v);
$sonpri = array_merge($sonpri,$sonpri2);
}
$sonpri = array_unique($sonpri);
$chilrenids = implode(',', $sonpri);
}else{//单个删除
$chilrenids =$this->childid($options['where']['id']);
$chilrenids = implode(',', $chilrenids);
}
if($chilrenids){
$this->execute("delete from ed_privilege where id in($chilrenids)");
}
}
在这里我们写出批量删除的代码(单个删除之前已经写过,不再提)
将传过来的字符串转化为不带逗号的数组形式存在$arr中,建立一个空数组$sonpri,然后foreach遍历,这里先查找出所有的子栏目id(会用childid函数),存入$sonpri2数组中 ,再将$sonpri和$sonpri2合并为一个数组,使用array_merge()函数完成,这样我们才算是获取到了所有子栏目的id,但是我们所获取的id组中,会出现许多重复的id,所以这里我们还要进行去重的操作,使用array_unique()函数。最后再进行一次数组的拆分,得到id字符串,再进行删除就大功告成了。
以上这篇ThinkPHP删除栏目(实现批量删除栏目)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# ThinkPHP删除栏目
# Thinkphp5.0框架使用模型Model的获取器、修改器、软删除数据操作示例
# Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解
# tp5(thinkPHP5框架)使用DB实现批量删除功能示例
# thinkPHP利用ajax异步上传图片并显示、删除的示例
# ThinkPHP框架实现用户信息查询更新及删除功能示例
# 基于php(Thinkphp)+jquery 实现ajax多选反选不选删除数据功能
# thinkphp框架实现删除和批量删除
# thinkPHP删除前弹出确认框的简单实现方法
# 基于ThinkPHP删除目录及目录文件函数
# 的是
# 在这里
# 给大家
# 转化为
# 值为
# 组中
# 是一个
# 也有
# 给他
# 说了
# 这就是
# 遍历
# 不多
# 请重试
# 这条
# 希望能
# 这样一个
# 大功告成
# 可以直接
# 要将
相关文章:
如何在搬瓦工VPS快速搭建网站?
如何在Golang中使用replace替换模块_指定本地或远程路径
如何用PHP工具快速搭建高效网站?
建站之星展会模版如何一键下载生成?
建站之星安装步骤有哪些常见问题?
网站按钮制作软件,如何实现网页中按钮的自动点击?
清单制作人网站有哪些,近日“兴风作浪的姑奶奶”引起很多人的关注这是什么事情?
网站建设设计制作营销公司南阳,如何策划设计和建设网站?
如何基于云服务器快速搭建个人网站?
,网站推广常用方法?
如何用已有域名快速搭建网站?
如何确认建站备案号应放置的具体位置?
岳西云建站教程与模板下载_一站式快速建站系统操作指南
ui设计制作网站有哪些,手机UI设计网址吗?
太原网站制作公司有哪些,网约车营运证查询官网?
开封网站制作公司,网络用语开封是什么意思?
建站之星后台密码遗忘如何找回?
建站之星如何保障用户数据免受黑客入侵?
如何在万网主机上快速搭建网站?
成都网站制作报价公司,成都工业用气开户费用?
建站之星代理平台如何选择最佳方案?
如何在橙子建站上传落地页?操作指南详解
建站10G流量真的够用吗?如何应对访问高峰?
网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?
深圳网站制作的公司有哪些,dido官方网站?
三星网站视频制作教程下载,三星w23网页如何全屏?
网站建设制作、微信公众号,公明人民医院怎么在网上预约?
如何制作算命网站,怎么注册算命网站?
高性价比服务器租赁——企业级配置与24小时运维服务
手机网站制作与建设方案,手机网站如何建设?
内网网站制作软件,内网的网站如何发布到外网?
如何挑选优质建站一级代理提升网站排名?
头像制作网站在线制作软件,dw网页背景图像怎么设置?
建站之星微信建站一键生成小程序+多端营销系统
模具网站制作流程,如何找模具客户?
如何通过虚拟主机空间快速建站?
湖州网站制作公司有哪些,浙江中蓝新能源公司官网?
如何用西部建站助手快速创建专业网站?
,交易猫的商品怎么发布到网站上去?
Python路径拼接规范_跨平台处理说明【指导】
制作证书网站有哪些,全国城建培训中心证书查询官网?
如何用PHP快速搭建CMS系统?
清除minerd进程的简单方法
香港服务器网站卡顿?如何解决网络延迟与负载问题?
长沙企业网站制作哪家好,长沙水业集团官方网站?
如何正确下载安装西数主机建站助手?
企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?
天津个人网站制作公司,天津网约车驾驶员从业资格证官网?
非常酷的网站设计制作软件,酷培ai教育官方网站?
简历在线制作网站免费,免费下载个人简历的网站是哪些?
*请认真填写需求信息,我们会在24小时内与您取得联系。