你的位置:首页 > 数据库

[数据库]使用thinkPHP框架实现删除和批量删除一例【原创】


  本文为作者原创,转载请注明原作者及转载地址。

  上一篇讲了如何用thinkPHP框架实现数据的添加,那这一篇就讲一下如何用thinkPHP实现数据的删除和批量删除吧。

  预期效果图:

  原谅博主对照片的处理是如此的草率吧。。。

  仍然是 通过MVC模式进行拆分:

  首先是视图部分:

  

      <form action="__MODULE__/Admin/User/del" method="get">       <tr>        <th width="4%"><input type="checkbox" name="checkbox10" id="checkbox10"></th>        <th width="13%">用户名</th>        <th width="10%">真实姓名</th>        <th width="13%">手机号</th>        <th width="21%">邮箱</th>        <th width="11%">注册时间</th>        <th width="17%">操作</th>       </tr>      <volist name = 'adminUsers' id = 'vo'>       <tr>        <td><input type="checkbox" name="id[]" id="checkbox" value="{$vo.id}">        <td>{$vo.username}</td>        <td>{$vo.realname}</td>        <td>{$vo.telphone}</td>        <td>{$vo.email}</td>        <td>{$vo.resgistertime}</td>        <td><a href="__MODULE__/Admin/User/modi/id/{$vo.id}">修改</a><a href="#"></a> <a href="__MODULE__/Admin/User/del/id/{$vo.id}">删除</a></td>      </tr>      </volist>                  </table>     </div>     <div class="input-group pull-left form">        <button type="submit" class="btn btn-danger ">删 除</button>      </div>      </form>

  仍然是采用表单传值的方法,不过这次不需要验证,因为是对数据的直接处理而非让用户输入数据,所以不必担心数据的不合法性省略了model部分。这里采用的一种比较巧妙地一种方法是将name定义为了一个数组,而在控制器中则只需要对传入的id判断一下是不是数组,省去了分开写的麻烦。

  接下来是控制器的部分

  

public function del(){  // $name = getActionName();   //作为公共的函数使用时添加  $adminUsersModel = D("adminUsers"); //获取当期模块的操作对象   $id = $_GET['id'];  //判断id是数组还是一个数值   if(is_array($id)){       $where = 'id in('.implode(',',$id).')';    }else{     $where = 'id='.$id;   }  //dump($where);   $list=$adminUsersModel->where($where)->delete();    if($list!==false) {     $this->success("成功删除{$list}条!", U("Admin/User/lists"));   }else{       $this->error('删除失败!');    } }

  以上便是全部的是全部的实现过程了,不知道这种相对巧妙地方法小伙伴们GET到了吗?