欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

thinkphp框架实现删除和批量删除

程序员文章站 2022-05-13 09:15:01
...
本文实例讲一下如何用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到了吗?

更多thinkphp框架实现删除和批量删除相关文章请关注PHP中文网!

相关标签: thinkphp框架