本文为作者原创,转载请注明原作者及转载地址。

  上一篇讲了如何用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框架实现删除和批量删除一例【原创】的更多相关文章

  1. Thinkphp 全选、反选 批量删除

    完整案例 前台 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...

  2. ajax 显示,删除,批量删除,修改反填功能实现

    1.页面代码 <body> <h1>显示所有员工信息</h1> <input id="Button1" type="button ...

  3. bootstrapTable--4.删除和批量删除

    http://blog.csdn.net/qq_26553781/article/details/78058389 ------------------------------------------ ...

  4. django实战(三)--删除和批量删除

    上一节我们完成了带分页的模糊查询,本节我们继续删除操作. 同样的,先给出各个模块的代码(上一节的就不在贴出了):urls.py path('curd/delete/',views.curd_delet ...

  5. thinkphp框架3.2的cookie删除问题记录

    在使用框架删除cookie时,发现cookie(null)不起作用.后来查看官网相关信息,看到了讨论http://www.thinkphp.cn/bug/2602.html

  6. oss文件上传删除(批量删除)处理

    博主用的是阿里云的oss 首先先在阿里云下载安装sdk,相关的sdk下载请自行到阿里云下载 文档地址   https://help.aliyun.com/document_detail/85580.h ...

  7. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(18)-过滤器的使用和批量删除数据(伪删除和直接删除)

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(18)-过滤器的使用和批量删除数据(伪删除和直接删除) ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   ...

  8. mteclipse中运行的分页,搜索,列表批量删除的界面,它的源代码

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...

  9. 5月21 汽车查询及批量删除----php方法

    ---恢复内容开始--- 这个与之前不同是在php中实现了页面的查询,引用AJAX实现批量删除及弹窗的显示 作业要求: 页面显示数据代码: <!DOCTYPE html PUBLIC " ...

随机推荐

  1. Android应用程序框架之无边界设计意图

    Android的应用框架的外特性空间的描述在SDK文档有十分清楚的描述,Android应用的基本概念,组件生命周期等等有详细的描述.在外特性空间中,Android提供了Activity,Service ...

  2. phpstorm 和web storm汉化

    http://www.jincaimao.com/cms-phpstorm-index.html phpStorm汉化方法: B1).找到X:\Program Files\JetBrains\PhpS ...

  3. VBA Excel 打印

    1. 设置 页边距.打印区域 With .PageSetup .HeaderMargin = Application.CentimetersToPoints(0.5) .LeftMargin = Ap ...

  4. IDEA 编译错误:java: try-with-resources is not supported in -source 1.6 (use -source 7 or higher to enable try-with-resources)

    错误描述 在用IDEA编译别人的项目的时候遇到下面的错误: java: try-with-resources is not supported in -source 1.6 (use -source ...

  5. Web Navigation

    Description Standard web browsers contain features to move backward and forward among the pages rece ...

  6. DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements SingletonBeanRegistry

    // 用于内部标记的空的单例对象(不支持null)protected static final Object NULL_OBJECT = new Object(); // 缓存单例对象根据beanNa ...

  7. Nodejs的mysql模块学习(一)

    介绍 mysql npm包 是一个nodejs的模块,由JavaScript编写 安装 npm install mysql 建立连接 var mysql = require('mysql');//引用 ...

  8. JS 控制文本框只能输入中文、英文、数字与指定特殊符号

    想做姓名输入的js判断是否是中文,但是网上找的很多是源于一篇文章的,判断中文的正则式不对,后来找到一个可以准确判断了,但是是监测里面有中文的就行,跟我想要的只能输入中文的意思相左,所以又找了下面的 J ...

  9. 以前写过的一些oracle语句

    这下以后用起来就方便了.可算是找到了 Orcl 数据库服务 启动项: OracleDBConsoleorcl OracleOraDb10g_home1iSQL*Plus OracleOraDb10g_ ...

  10. linux -cp/mv

    cp 复制 -r文件夹 -f强制没有提示 mv 移动改名 mv test.py temp/test2.py移动(后面只加路径就是移动.路径+文件名就是移动+改名) 执行mv一般会执行  mv -i交互 ...