ThinkPHP实现更新数据实例详解(demo)

在没介绍正文之前先给大家介绍下数据更新方法支持的连贯操作方法有:

在上一篇文章中我们实现了数据的删除和批量删除,这一篇文章我们将实现数据的更新。

  首先依然是预期效果图:

  

点击修改后进入modi.html页面,然后进行修改,如此处修改了真实姓名这一属性:

点击保存:

  以上是要实现的效果,下面是实现的具体代码了:

  首先依然是视图内的代码:

<form role="form" method="post" action="__MODULE__/Admin/User/doAdd"> <div class="input-group"> <span class="input-group-addon">用<img src="__PUBLIC__/end/images/em.png" alt="" width="6" height="20">户<img src="__PUBLIC__/end/images/em.png" alt="" width="6" height="20">名:</span> <input type="text" class="form-control" placeholder="" name="username"> </div> <div class="input-group "> <span class="input-group-addon" for="inputWarning1">真实姓名:</span> <input type="text" class="form-control" placeholder="" id="input" name="realname"> </div> <div class="input-group"> <span class="input-group-addon">手机号码:</span> <input type="text" class="form-control" placeholder="" name="telphone"> </div> <div class="input-group"> <span class="input-group-addon">电子邮箱:</span> <input type="text" class="form-control" placeholder="" name="email"> </div> <div class="input-group"> <span class="input-group-addon">添加时间:</span> <input type="text" class="form-control" placeholder="2014-05-22" name="resgistertime"> </div> <div class="input-group"> <span class="input-group-addon">设置密码:</span> <input type="text" class="form-control" placeholder="123456" name="password"> </div> <div class="input-group"> <span class="input-group-addon">确认密码:</span> <input type="text" class="form-control" placeholder="123456" name="repassword"> </div> <div class="input-group"> <button type="submit" class="btn btn-primary ">   保<img src="__PUBLIC__/end/images/em.png" alt="" width="20" height="20">存  </button> </div> </form>

  接下来是控制器:需要说明的是这里需要对未修改前的值进行一下写入,主要是为了方便用户备忘,因此需要进行一个if分支的判断:

public function modi(){ if (IS_POST) { $adminUsersModel = D("adminUsers"); $adminUsersModel->create(); // var_dump($adminUsersModel); // exit("创建成功!"); if($adminUsersModel->save()){ $this->success("修改成功", U("Admin/User/lists")); } else { $this->error($adminUsersModel->getError()); } } else { $id = isset($_GET['id']) ? intval($_GET['id']) : ''; if ($id == '') { exit("bad param! 请输入id"); } $adminUsersModel=D("adminUsers"); $adminUsers=$adminUsersModel->find($id); //var_dump($adminUsers); $this->assign("adminUsers", $adminUsers); $this->display(); } }

下面给大家介绍下thinkphp更新数据库的五种方法

第一种方法:

$模型->where(‘id=1')->save($data);

第二种方法:

$模型->where(‘id=1')->data($data)->save();

第三种方法:

$模型->create();

$模型->save();

表单中必须包含一个以主键为名称的隐藏域

第四种方法:

$模型->where('id=5')->setField('name','ThinkPHP');

$模型->where('id=5')->setField(array('name','email'),array('TP','TP@163.com'));

//第四种方法,传数组时候,我实现不了。。。

第五种方法:

$模型->setInc('score','id=5',3); // 积分加3

$模型->setInc('score','id=5'); // 积分加1

$模型->setDec('score','id=5',5); // 积分减5

$模型->setDec('score','id=5'); // 积分减1

时间: 2024-11-13 07:52:16

ThinkPHP实现更新数据实例详解(demo)的相关文章

ThinkPHP实现更新数据实例详解(demo)_php实例

在没介绍正文之前先给大家介绍下数据更新方法支持的连贯操作方法有: 在上一篇文章中我们实现了数据的删除和批量删除,这一篇文章我们将实现数据的更新. 首先依然是预期效果图: 点击修改后进入modi.html页面,然后进行修改,如此处修改了真实姓名这一属性: 点击保存: 以上是要实现的效果,下面是实现的具体代码了: 首先依然是视图内的代码: <form role="form" method="post" action="__MODULE__/Admin/U

Android 图片存入系统相册更新显示实例详解

Android 图片存入系统相册更新显示实例详解 在开发android的过程中,我们避免不了可能会涉及到做一个自定义相册或则会去本地创建一个文件夹来存储我们需要的图片.拿相册来说,比如我们创建一个test的文件夹,拍完一张照片后存储到这个指定的test文件夹里,然后在相册里面显示出来,就像微信的效果一样.拍完即可立即显示.但是,在实际开发过程中我们保存完一张图片后并不能立即更新显示出来这个图片,需要我们重启手机才能在系统相册中显示出来. 这里先提供一个插入系统图库的方法: MediaStore.

ThinkPHP之R方法实例详解_php实例

ThinkPHP的R方法用于调用某个控制器的操作方法,是A方法的进一步增强和补充. R方法的调用格式: R('[项目://][分组/]模块/操作','参数','控制器层名称') 例如,我们定义了一个操作方法为: class UserAction extends Action { public function detail($id){ return M('User')->find($id); } } 那么就可以通过R方法在其他控制器里面调用这个操作方法(一般R方法用于跨模块调用) $data =

Android 两个Fragment之间传递数据实例详解_Android

 Android 两个Fragment之间如何传递数据 FragmentA启动FragmentB,做一些选择操作后,返回FragmentA,需要把FragmentB里面选择的数据传回来.有什么办法? Fragment之间不能直接通信,必须通过Activity来完成,具体步骤. 1. 在FragmentA中定义通信接口,通过该接口向Activity发送数据. public class FragmentA extends Fragment { private onButtonPressListene

ThinkPHP之N方法实例详解_php实例

ThinkPHP的N方法属于计数器方法,被用于核心的查询.缓存统计的计数和统计.但是其实可以用于应用的其他计数用途,用法比较简单,调用格式: N('计数位置'[,'步进值']) 例如,我们要统计页面中的查询次数,可以用 N('read',1); 表示每次执行到该位置都会引起计数器加1,到页面结束之前,我们就可以用 $count = N('read'); 来统计当前页面执行的查询数目. 如果你希望计数器每次增加5,那么可以改变步进值,例如: N('score',5); 需要注意的是,N方法页面执行

ThinkPHP之import方法实例详解_php实例

import方法是ThinkPHP框架用于类库导入的封装实现,尤其对于项目类库.扩展类库和第三方类库的导入支持,import方法早期的版本可以和java的import方法一样导入目录和通配符导入,后来考虑到性能问题,在后续的版本更新中不断改进和简化了,所以现在的用法比较简单明了.调用格式: import('类库名', '起始路径', '类库后缀') imprt方法有一个别名vendor方法,专门用于导入第三方类库,区别在于起始路径和类库后缀默认值不同. 我们来分析下具体的用法: 1.导入系统基类

mySQL count多个表的数据实例详解_Mysql

一.实现需求 最近在做成就系统,成就中有很多维度都和数量有关,比如用户粉丝数达到多少50个,授予 名扬四海 称号,用户点赞达到 100 次,授予 点赞圣手 称号等等. 粉丝数在 user_relation 表 点赞数在 user_praise 表 按照以往的做法,如果需要查询用户的这些数据,又因为数据是在不同的表中,所以往往会分开多条 SQL 查询,比如: SELECT count(*) mysh FROM user_relation WHERE other_uid =123456; SELEC

javascript动态创建表格及添加数据实例详解_javascript技巧

本文实例讲述了javascript动态创建表格及添加数据的方法.分享给大家供大家参考.具体分析如下: 1. 动态创建表格(代码不兼容IE6) <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>动态

ThinkPHP权限认证Auth实例详解_php实例

本文以实例代码的形式深入剖析了ThinkPHP权限认证Auth的实现原理与方法,具体步骤如下: mysql数据库部分sql代码: -- ---------------------------- -- Table structure for think_auth_group -- ---------------------------- DROP TABLE IF EXISTS `think_auth_group`; CREATE TABLE `think_auth_group` ( `id` m