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

yipeiwu_com6年前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中理解print EOT分界符和echo EOT的用法区别小结

html与php编写中echo可以同时输出多个字符串,并不需要圆括号。 print只可以同时输出一个字符串,需要圆括号。 print的用法和C语言很像,所以会对输出内容里的%做特殊解释。...

深入解析PHP中SESSION反序列化机制

深入解析PHP中SESSION反序列化机制

简介 在php.ini中存在三项配置项: session.save_path=""   --设置session的存储路径 session.save_hand...

提高define性能的php扩展hidef的安装和使用

提高define性能的php扩展hidef的安装和使用

官网:http://pecl.php.net/package/hidef简介:  Allow definition of user defined constants in simple...

解析php中的escape函数

采用js对URL中的汉字进行escape编码。 <a href="" onclick="window.open('product_list.php?p_sort='+escape(...

php 检查电子邮件函数(自写)

复制代码 代码如下: function is_valid_email_address($email){ $qtext = '[^//x0d//x22//x5c//x80-//xff]';...