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

yipeiwu_com5年前PHP代码库

本文实例讲一下如何用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到了吗?

原文作者:橙色时光

相关文章

PHP 5.0对象模型深度探索之属性和方法

可以联用->,如果一个对象的属性包含了一个对象,你可以使用两个->运算符来得到内部对象的属性. 你甚至可以用双重引用的字符串来放置这些表达式. 下面的例子中,对象Ho...

php遍历解析xml字符串的方法

本文实例讲述了php遍历解析xml字符串的方法。分享给大家供大家参考,具体如下: <?php $content = <<<XML <?x...

Fatal error: session_start(): Failed to initialize storage module: files问题解决方法

之前编译安装的LNMP环境+phpmyamdin4.02的版本,今天突然出现这个问题:复制代码 代码如下:Fatal error: session_start(): Failed to...

CI框架(ajax分页,全选,反选,不选,批量删除)完整代码详解

CodeIgniter 是一个小巧但功能强大的 PHP 框架,作为一个简单而“优雅”的工具包,它可以为开发者们建立功能完善的 Web 应用程序。是比较主流的一个PHP框架。 下面给大家...

PHP使用strrev翻转中文乱码问题的解决方法

本文实例讲述了PHP使用strrev翻转中文乱码问题的解决方法。分享给大家供大家参考,具体如下: 在用PHP中的strrve翻转中文时,会出现乱码情况 例如: header("Con...