1 <?php
 2     class CurdAction extends Action{
 3         public function del($id){
 4             $result=false;
 5             $User=M("user");
 6             $result=$User->Where('id='.$id)->delete();
 7             if($result==false){
 8                 echo json_encode(array('msg'=>'删除出错!'));
 9             }else{
10                 echo json_encode(array('success'=>true));
11             }
12         }
13         public function save($id){
14             $result=false;
15             $User = M("User");
16             $data['firstname'] = $_REQUEST['firstname'];
17             $data['lastname'] = $_REQUEST['lastname'];
18             $data['phone'] = $_REQUEST['phone'];
19             $data['email'] = $_REQUEST['email'];
20             $result=$User->where('id='.$_REQUEST['id'])->save($data);
21             if($result==true){
22                 echo json_encode(array('success'=>true));
23             }else{
24                 echo json_encode(array('msg'=>'更新出错!'));
25             }
26         }
27         
28         public function add(){
29             $result=false;
30             $User=M("User");
31             $data['firstname'] = $_REQUEST['firstname'];
32             $data['lastname'] = $_REQUEST['lastname'];
33             $data['phone'] = $_REQUEST['phone'];
34             $data['email'] = $_REQUEST['email'];
35             $result=$User->add($data);
36             if($result==true){
37                 echo json_encode(array('success'=>true));
38             }else{
39                 echo json_encode(array('msg'=>'添加出错!'));
40             }
41         }
42         
43         public function read(){
44             $pagenum=isset($_POST['page']) ? intval($_POST['page']) : 1;
45             $rowsnum=isset($_POST['rows']) ? intval($_POST['rows']) : 10;
46             $User=M("User");
47             $total = $User->count();    //计算总数 
48             $userlist=array();
49             $userlist=$User->limit(($pagenum-1)*$rowsnum.','.$rowsnum)->order('id asc')->select();
50             $json='{"total":'.$total.',"rows":'.json_encode($userlist).'}';//重要,easyui的标准数据格式,数据总数和数据内容在同一个json中
51             echo $json;
52         }
53     }
54 ?>
以上是PHP源代码CurdAction.class.php,以下是datagrid界面  
http://www.cnblogs.com/m199/archive/2012/12/18/2824066.html

整合Thinkphp数据库基本操作CURD,界面datagrid采用EasyUi的Demo的更多相关文章

  1. ThinkPHP的基本操作

    一.生成入口文件 1.打开服务器,在本地环境测试时在地址栏输入localhost/项目文件名/index.php  可以在Application下面生成一个home模块,记得在这之前,要建立一个项目文 ...

  2. ThinkPHP 数据库操作(五) : 存储过程、数据集、分布式数据库

    存储过程 5.0支持存储过程,如果我们定义了一个数据库存储过程 sp_query ,可以使用下面的方式调用: $result = Db::query('call sp_query(8)'); 返回的是 ...

  3. 基于SqlSugar的开发框架循序渐进介绍(15)-- 整合代码生成工具进行前端界面的生成

    在前面随笔<基于SqlSugar的开发框架循序渐进介绍(12)-- 拆分页面模块内容为组件,实现分而治之的处理>中我们已经介绍过,对于相关的业务表的界面代码,我们已经尽可能把不同的业务逻辑 ...

  4. Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版

    一.前言 什么是MyBatis?MyBatis是目前Java平台最为流行的ORM框架https://baike.baidu.com/item/MyBatis/2824918 本篇开发环境1.操作系统: ...

  5. ThinkPHP 数据库操作(一) : 连接数据库

    ThinkPHP内置了抽象数据库访问层,把不同的数据库操作封装起来,我们只需要使用公共的Db类进行操 作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库驱动来处理.采用 P ...

  6. Flask数据库基本操作

    数据库基本操作 在Flak-SQLAlchemy中,插入.修改.删除操作,均由数据库会话管理. 会话用db.session表示.在准备把数据写入数据库前,需要先将数据添加到会话中然后调用commit( ...

  7. Django/MySql数据库基本操作&ORM操作

    数据库配置: #第一步在settings里面 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME':'dbna ...

  8. 10款最好用的MySQL数据库客户端图形界面管理工具

    MySQL Workbench 该工具由MySQL开发,是一个跨平台的可视化数据库设计工具.它是DBDesigner4项目备受期待的替代者,它是一个本地图形化工具,支持的操作系统包括Windows.L ...

  9. ecmall数据库基本操作

    ecmall数据库基本操作,为了认真研究ecmall二次开发,我们必须熟悉ecamll的数据库结构,ecmall数据库结构研究熟悉之后,才能去认真分析ecamll的程序结构.从而实现ecmall二次开 ...

随机推荐

  1. Delphi 使窗体Showmodal后可以操作其他窗体

    对话框ShowModal之后不能操作其它窗口,实际上是因为Windows Disable了其它窗口.所以当你需要在模态对话框中访问其它已经可见的窗口时,需要用EnableWindow API来激活对应 ...

  2. DELPHI HMAC256

    DELPHI HMAC256   unit HMAC;interfaceuses  System.SysUtils,  EncdDecd,  IdHMAC,  IdSSLOpenSSL,  IdHas ...

  3. CSS3:box-sizing 怪异盒模型

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. javascript函数,构造函数。js对象和json的区别。js中this指向问题

    函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块.好处:在出现大量程序相同的时候,可以封装为一个function,这样只用调用一次,就能执行很多语句.(1)语法:函数就是包裹在花括号中的代码 ...

  5. DL380 G6 BIOS刷新方法

    bios下载地址SP44873.exe (5.9 MB) http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareDescription.js ...

  6. 轻松学习JavaScript十二:JavaScript基于面向对象之创建对象(二)

    四原型方式 我们创建的每一个函数都有一个通过prototype(原型)属性.这个属性是一个对象,它的用途是包括能够由特定类型 的全部实例共享的属性和方法. 逻辑上能够这么理解:prototypt通过条 ...

  7. [Functional Programming] Combine Multiple State ADT Instances with the Same Input (converge(liftA2(constant)))

    When combining multiple State ADT instances that depend on the same input, using chain can become qu ...

  8. npm install --no-bin-links中的参数“no-bin-links”表示什么意思

    npm install --no-bin-links中的参数"no-bin-links"表示什么意思

  9. tcp/ip--百度百科

    Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议.Inter ...

  10. android 开机自启动的几种方法,监听不到RECEIVE_BOOT_COMPLETED的处理办法

    第一种:  监控RECEIVE_BOOT_COMPLETED,即开机启动事件 另外一种: 监控sd卡mount事件  开机总会扫描sd卡吧? 监控sd卡事件也有类似开机启动效果.特别app安装在sd卡 ...