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

2018-09-07 22:11

阅读:339

  本文实例讲述了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程序设计有所帮助。


评论


亲,登录后才可以留言!