三个方法搞定全站增、删、改操作
来源:互联网 发布:windows优化大师好吗 编辑:程序博客网 时间:2024/05/17 18:46
1、此方法适合简单的项目中使用。
2、增、删、改的操作无非都是实例化表或模型,最后返回success或error。
3、涉及到增、删、改的表单我一律采用AJAX提交,在AJAX里实现完成后地址的跳转。
4、新手据此总结,不当或遗漏之处,敬请指正。
########################################################
第一步:在项目的lib/Action中新建CommonAction.class.php;
当然,你也可以写在其他Action里,只是涉及到增、删、改操作的方法继承它就可以。习惯于写在CommonAction.class.php中是因为这三种涉及数据库操作的方法都会经过权限控制,写在这里更方便不是?
-------------------------------------------------------------------------------
第二步:键入代码如下:
复制代码
-------------------------------------------------------------------------------
用法示例:
2、增、删、改的操作无非都是实例化表或模型,最后返回success或error。
3、涉及到增、删、改的表单我一律采用AJAX提交,在AJAX里实现完成后地址的跳转。
4、新手据此总结,不当或遗漏之处,敬请指正。
########################################################
第一步:在项目的lib/Action中新建CommonAction.class.php;
当然,你也可以写在其他Action里,只是涉及到增、删、改操作的方法继承它就可以。习惯于写在CommonAction.class.php中是因为这三种涉及数据库操作的方法都会经过权限控制,写在这里更方便不是?
-------------------------------------------------------------------------------
第二步:键入代码如下:
<?php class CommonAction extends Action { //删除 Protected function do_delete($table){ $id=I('id',0,'intval');//在表单中传入要删除数据的主键ID,否则取0,那么下面就会返回错误,所以不会误删。 $result=M("$table")->delete($id);//删除就只用M实例化表 if ($result) { $this->success('删除成功!'); }else{ $this->error('删除失败!'); } } //增加 $arr用于在表单创建以后再添加额外的数据 Protected function do_add($table,$arr=null){ $t=D("$table");//D方法实例化$table模型,以确保自动验证的自动完成有效 if($t->create()){ if(is_array($arr)){ foreach($arr as $k=>$v){ $t->$k=$v; } } $result=$t->add(); if($result == false){ $this->error('添加失败!'); }else{ $this->success('添加成功!'); } }else{ $this->error($t->getError()); } } //修改 在修改的表单模板,请确保传入了要修改的记录主键ID Protected function do_mod($table){ $t=D("$table"); if ($t->create()) { $result=$t->save(); if($result == false){$this->error('修改失败!');}else{$this->success('修改成功!');} }else{$this->error($t->getError());} } }
复制代码
-------------------------------------------------------------------------------
用法示例:
<?php class FormAction extends CommonAction { //对Form表进行添加记录 Public function add () { if (IS_POST) { parent::do_add('Form'); //调用CommonAction中的do_add方法 } else { $this->display(); //显示添加模板 } } //对Form表进行删除记录 Public function delete () { parent::do_del('Form'); //调用CommonAction中的do_del方法 } //对Form表进行修改记录 Public function modify () { if (IS_POST) { parent::do_mod('Form'); //调用CommonAction中的do_mod方法 } else { $this->display(); } } //在自动完成之外再追加自定义内容 //发布文章 Public function addArticle () { if(IS_POST){ $arr=array( //定义和表中字段名为键名,自定义内容为值的数组 'creatime' => time(), 'authorId' => $_SESSION[C('USER_AUTH_KEY')] ); // dump($_SESSION); parent::do_add('article',$arr); //调用CommonAction中的do_add方法,并传入自定义的内容 }else{ $this->assign(array('title'=>'添加文章'))->display(); } } } ?>
0 0
- 三个方法搞定全站增、删、改操作
- VB.net 对MSSQL操作 查、删、改 三个常规操作
- 万能 dao 增删改查一个方法搞定
- javascript操作cookie的三个基础方法
- 如何批量实现远程视频监控?不改路由设置、一次操作全部搞定!
- Merge多表增、删、改操作
- java连接redis中的数据查、增、改、删操作的方法
- java封装JDBC操作数据库的方法:增、删、改、查
- 看三个白痴有改
- DataTableRows集合的三个常用方法(数据库的操作)
- java web中读取文件操作的三个方法
- 搞定git操作只需三步
- MongoDB3.2增删查改方法简述(CRUD操作)
- SQL增、删、改、查操作语句
- XML增/删、改、查简单操作
- (转)电话薄contacts操作增 删 改
- C#操作XML(增,删,改)
- JDBC(一)增,删,改,查操作
- ios6应用运行在ios7系统上
- java集合框架的体系结构详细说明
- 如何提高IntentFilter的优先级
- 正弦余弦波
- jQuery.extend()的实现方式[转载]
- 三个方法搞定全站增、删、改操作
- 基本OOP技术
- it 面试
- android 中查询数据库 limit offset使用
- 4
- 正则表达式
- C++中的单例模板类
- Shell 条件测试
- 【黑马程序员】Java基础加强19:JDK1.5线程池与Lock机制