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


Posted in PHP onJune 29, 2016

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

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

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

首先依然是预期效果图:

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

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

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

点击保存:

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

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

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

<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

PHP 相关文章推荐
从零开始 教你如何搭建Discuz!4.1论坛
Jul 07 PHP
桌面中心(二)数据库写入
Oct 09 PHP
Breeze 文章管理系统 v1.0.0正式发布
Dec 14 PHP
php cli 小技巧
Jun 03 PHP
PHP 下载文件时自动添加bom头的方法实例
Jan 10 PHP
强制PHP命令行脚本单进程运行的方法
Apr 15 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十一)
Jun 25 PHP
php获取YouTube视频信息的方法
Feb 11 PHP
php从文件夹随机读取文件的方法
Jun 01 PHP
WordPress中获取指定分类及其子分类下的文章数目
Dec 31 PHP
PHP中迭代器的简单实现及Yii框架中的迭代器实现方法示例
Apr 26 PHP
PHP重载基础知识回顾
Sep 10 PHP
php结合mysql与mysqli扩展处理事务的方法
Jun 29 #PHP
php简单解析mysqli查询结果的方法(2种方法)
Jun 29 #PHP
php mysqli查询语句返回值类型实例分析
Jun 29 #PHP
thinkphp框架实现数据添加和显示功能
Jun 29 #PHP
thinkphp框架实现删除和批量删除
Jun 29 #PHP
浅谈PHP值mysql操作类
Jun 29 #PHP
验证token、回复图文\文本、推送消息的实用微信类php代码
Jun 28 #PHP
You might like
PHP 地址栏信息的获取代码
2009/01/07 PHP
php文件上传简单实现方法
2015/01/24 PHP
PHP查询分页的实现代码
2017/06/09 PHP
PHP利用Cookie设置用户30分钟未操作自动退出功能
2017/07/03 PHP
跟我学习javascript的arguments对象
2015/11/16 Javascript
js实现精确到秒的日期选择器完整实例
2016/04/30 Javascript
js和jQuery设置Opacity半透明 兼容IE6
2016/05/24 Javascript
微信小程序  wx.request合法域名配置详解
2016/11/23 Javascript
使用Javascript判断浏览器终端设备(PC、IOS(iphone)、Android)
2017/01/04 Javascript
JavaScript正则获取地址栏中参数的方法
2017/03/02 Javascript
vuejs响应用户事件(如点击事件)
2017/03/14 Javascript
javaScript之split与join的区别(详解)
2017/11/08 Javascript
vue实现键盘输入支付密码功能
2018/08/18 Javascript
vuejs router history 配置到iis的方法
2018/09/20 Javascript
在vue中获取token,并将token写进header的方法
2018/09/26 Javascript
vue中keep-alive内置组件缓存的实例代码
2020/04/16 Javascript
JavaScript如何实现监听键盘输入和鼠标监点击
2020/07/20 Javascript
Python的Django框架中设置日期和字段可选的方法
2015/07/17 Python
Python连接mysql数据库的正确姿势
2016/02/03 Python
Ubuntu 下 vim 搭建python 环境 配置
2017/06/12 Python
Django自带日志 settings.py文件配置方法
2019/08/30 Python
python实现银行管理系统
2019/10/25 Python
关于多元线性回归分析——Python&amp;SPSS
2020/02/24 Python
python使用openpyxl操作excel的方法步骤
2020/05/28 Python
CSS3 text shadow字体阴影效果
2016/01/08 HTML / CSS
html5给汉字加拼音加进度条的实现代码
2020/04/07 HTML / CSS
希腊香水和化妆品购物网站:Parfimo.gr
2019/10/03 全球购物
瑞士男士时尚网上商店:Babista
2020/05/14 全球购物
若干个Java基础面试题
2015/05/19 面试题
Java程序员面试90题
2013/10/19 面试题
服装设计专业毕业生求职信
2014/04/09 职场文书
教师工作表现评语
2014/12/31 职场文书
机修车间主任岗位职责
2015/04/08 职场文书
承兑汇票延期证明
2015/06/23 职场文书
2015年村级财务管理制度
2015/08/04 职场文书
MySQL 那些常见的错误设计规范,你都知道吗
2021/07/16 MySQL