使用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到了吗?

posted @ 2016-06-29 12:12  橙色时光  阅读(1141)  评论(0编辑  收藏  举报