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模块memcached使用指南

1.添加扩展包     php_memcache.dll 2.在PHP.INI添加     extension=php_memcache.dll 3.程序 复制代码 代码如下: <...

highchart数据源纵轴json内的值必须是int(详解)

var users = ["0","0","0","0","0","2","0"]; 这样的纵轴数据是不显示的,json里面的值必须是int类型。 必须是这样: var...

PHP中trim()函数简单使用指南

string trim ( string $str [, string $charlist ] ) - 去除字符串首尾处的空白字符(或者其他字符)   trim()函数当第二个参数为空时...

php 出现Strict Standards: Only variables should be passed by reference in的解决方法

这个问题多半是因为引用传递参数引起的,解决办法一是修改代码不使用引用传递;另一个办法是修改php配置文件,修改error_reporting 其值改为error_reporting =...

深入extjs与php参数交互的详解

复制代码 代码如下:<html> <head>  <title>HelloWorld</title>&nbs...