thinkPHP批量删除的实现方法分析


Posted in PHP onNovember 09, 2016

本文实例讲述了thinkPHP批量删除的实现方法。分享给大家供大家参考,具体如下:

html:

<li>
<a class="delete" href="__URL__/deleteSelected/navTabId/__MODULE__" target="selectedTodo" posttype="string" calback="navTabAjaxMenu" rel='ids' title="你确定要删除吗?" warn="请选择节点"><span>批量删除</span></a>
</li>
<table class="table" width="100%" layoutH="138">
    <thead>
      <tr>
        <th width="10"><input type="checkbox" class="checkboxCtrl" group="ids" /></th>
        <th width="60">编号</th>
      </tr>
    </thead>
    <tbody>
    <volist id="vo" name="list">
      <tr>
        <td><input name="ids" type="checkbox" value="{$vo.id}"> </td>
        <td>{$vo['id']}</td>
      </tr>
    </volist>
</table>

php:

public function deleteSelected() {
    //删除指定记录
    $name = $this->getActionName();
    $model = D($name);
    if (!empty($model)) {
      $pk = $model->getPk();
      $ids = $_REQUEST['ids'];
      if (!empty($ids)) {
        $condition = array($pk => array('in', explode(',', $ids)));
        if (false !== $model->where($condition)->delete()) {
          $sql = $model->_sql();
          $this->success("删除成功!");
        } else {
          $this->error('删除失败!');
        }
      } else {
        $this->error('非法操作');
      }
    }
}

原理是根据Web表单提交时可以传递数组,例如:

<input type="text" name="firstname">
<input type="text" name="lastname">
<input type="text" name="email">
<input type="text" name="address">
<input type="text" name="tree[tree1][fruit]">
<input type="text" name="tree[tree1][height]">
<input type="text" name="tree[tree2][fruit]">
<input type="text" name="tree[tree2][height]">
<input type="text" name="tree[tree3][fruit]">
<input type="text" name="tree[tree3][height]">

则传递过来的是:

$_POST[] = array(
  'firstname'=>'value',
  'lastname'=>'value',
  'email'=>'value',
  'address'=>'value',
  'tree' => array(
    'tree1'=>array(
      'fruit'=>'value',
      'height'=>'value'
    ),
    'tree2'=>array(
      'fruit'=>'value',
      'height'=>'value'
    ),
    'tree3'=>array(
      'fruit'=>'value',
      'height'=>'value'
    )
  )
)

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
set_include_path在win和linux下的区别
Jan 10 PHP
PHP获取当前文件所在目录 getcwd()函数
May 13 PHP
Session保存到数据库的php类分享
Oct 24 PHP
PHP5常用函数列表(分享)
Jun 07 PHP
PHP通过反射动态加载第三方类和获得类源码的实例
Nov 27 PHP
php curl中gzip的压缩性能测试实例分析
Nov 08 PHP
php获取访问者浏览页面的浏览器类型
Jan 23 PHP
thinkPHP5.0框架配置格式、加载解析与读取方法
Mar 17 PHP
浅谈thinkphp5 instance 的简单实现
Jul 30 PHP
PHP中in_array的隐式转换的解决方法
Mar 06 PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
Apr 08 PHP
关于PHP数组迭代器的使用方法实例
Nov 17 PHP
基于jQueryUI和Corethink实现百度的搜索提示功能
Nov 09 #PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
Nov 09 #PHP
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
Nov 09 #PHP
php利用gd库为图片添加水印
Nov 09 #PHP
php 输出json及显示json中的中文汉字详解及实例
Nov 09 #PHP
Yii2框架制作RESTful风格的API快速入门教程
Nov 08 #PHP
php封装的数据库函数与用法示例【参考thinkPHP】
Nov 08 #PHP
You might like
关于PHP二进制流 逐bit的低位在前算法(详解)
2013/06/13 PHP
thinkphp多表查询两表有重复相同字段的完美解决方法
2016/09/22 PHP
JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
2010/01/12 Javascript
事件冒泡是什么如何用jquery阻止事件冒泡
2013/03/20 Javascript
jquery打开直接跳到网页最下面、最低端实现代码
2013/04/22 Javascript
js中直接声明一个对象的方法
2014/08/10 Javascript
浅谈利用JavaScript进行的DDoS攻击原理与防御
2015/06/04 Javascript
javascript实现的字符串与十六进制表示字符串相互转换方法
2015/07/17 Javascript
JS实现按比例缩放图片的方法(附C#版代码)
2015/12/08 Javascript
详解vue之页面缓存问题(基于2.0)
2017/01/10 Javascript
jQuery插件zTree实现更新根节点中第i个节点名称的方法示例
2017/03/08 Javascript
Angular4学习教程之HTML属性绑定的方法
2018/01/04 Javascript
webpack4手动搭建Vue开发环境实现todoList项目的方法
2019/05/16 Javascript
react 中父组件与子组件双向绑定问题
2019/05/20 Javascript
JavaScript函数式编程(Functional Programming)声明式与命令式实例分析
2019/05/21 Javascript
Vue实现将数据库中带html标签的内容输出(原始HTML(Raw HTML))
2019/10/28 Javascript
微信小程序request请求封装,验签代码实例
2019/12/04 Javascript
uni-app 组件里面获取元素宽高的实现
2019/12/27 Javascript
解决element-ui的下拉框有值却无法选中的情况
2020/11/07 Javascript
[01:22:42]2014 DOTA2华西杯精英邀请赛 5 24 DK VS LGD
2014/05/26 DOTA
Python利用多进程将大量数据放入有限内存的教程
2015/04/01 Python
Python3使用正则表达式爬取内涵段子示例
2018/04/22 Python
python实现傅里叶级数展开的实现
2018/07/21 Python
Python redis操作实例分析【连接、管道、发布和订阅等】
2019/05/16 Python
Keras 实现加载预训练模型并冻结网络的层
2020/06/15 Python
使用 prometheus python 库编写自定义指标的方法(完整代码)
2020/06/29 Python
python 实现端口扫描工具
2020/12/18 Python
世界上最好的精品店:Shoptiques
2018/02/05 全球购物
毕业自我评价范文
2013/11/17 职场文书
新年抽奖获奖感言
2014/03/02 职场文书
体育活动总结范文
2014/05/04 职场文书
主要领导对照检查材料
2014/08/26 职场文书
学校师德师风整改措施
2014/10/27 职场文书
一篇合格的广告文案,其主要目的是什么?
2019/07/12 职场文书
Golang jwt身份认证
2022/04/20 Golang
海康机器人重磅发布全新算法开发平台VM4.2
2022/04/21 数码科技