thinkPHP批量删除的实现方法分析
程序员文章站
2024-04-02 09:38:46
本文实例讲述了thinkphp批量删除的实现方法。分享给大家供大家参考,具体如下:
html:
本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《thinkphp入门教程》、《thinkphp模板操作技巧总结》、《thinkphp常用方法总结》、《smarty模板入门基础教程》及《php模板技术总结》。
希望本文所述对大家基于thinkphp框架的php程序设计有所帮助。
上一篇: springboot 1.5.2 集成kafka的简单例子
下一篇: PHP文件上传类实例详解