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 相关文章推荐
隐性调用php程序的方法
Mar 09 PHP
PHP的cURL库功能简介 抓取网页、POST数据及其他
Apr 07 PHP
PHP __autoload()方法真的影响性能吗?
Mar 30 PHP
php快递单号查询接口使用示例
May 05 PHP
ThinkPHP的L方法使用简介
Jun 18 PHP
PHP中的reflection反射机制测试例子
Aug 05 PHP
自己写的php curl库实现整站克隆功能
Feb 12 PHP
php 类自动载入的方法
Jun 03 PHP
PHP中strcmp()和strcasecmp()函数字符串比较用法分析
Jan 07 PHP
PHP入门教程之数组用法汇总(创建,删除,遍历,排序等)
Sep 11 PHP
一个简单安全的PHP验证码类、PHP验证码
Sep 24 PHP
PHP实现重载的常用方法实例详解
Oct 18 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执行批量mysql语句的解决方法
2013/05/02 PHP
Symfony模板的快捷变量用法实例
2016/03/17 PHP
PHP获取IP地址所在地信息的实例(使用纯真IP数据库qqwry.dat)
2016/11/15 PHP
JavaScript toFixed() 方法
2010/04/15 Javascript
javascript计算当月剩余天数(天数计算器)示例代码
2014/01/09 Javascript
Javascript前端UI框架Kit使用指南之kitjs的对话框组件
2014/11/28 Javascript
在JavaScript中处理字符串之fontcolor()方法的使用
2015/06/08 Javascript
三种带箭头提示框总结实例
2016/06/14 Javascript
JS碰撞运动实现方法详解
2016/12/15 Javascript
js实现常见的工具条效果
2017/03/02 Javascript
解决node修改后需频繁手动重启的问题
2018/05/13 Javascript
vue.js通过路由实现经典的三栏布局实例代码
2018/07/08 Javascript
Vue中的作用域CSS和CSS模块的区别
2018/10/09 Javascript
JS常见面试试题总结【去重、遍历、闭包、继承等】
2019/08/27 Javascript
element ui分页多选,翻页记忆的实例
2019/09/03 Javascript
Vue可自定义tab组件用法实例
2019/10/24 Javascript
js正则匹配多个全部数据问题
2019/12/20 Javascript
Layer UI表格列日期格式化及取消自动填充日期的实现方法
2020/05/10 Javascript
vue中如何自定义右键菜单详解
2020/12/08 Vue.js
python如何使用正则表达式的前向、后向搜索及前向搜索否定模式详解
2017/11/08 Python
django静态文件加载的方法
2018/05/20 Python
Python selenium根据class定位页面元素的方法
2019/02/26 Python
python字符串替换re.sub()方法解析
2019/09/18 Python
离线状态下在jupyter notebook中使用plotly实例
2020/04/24 Python
Python extract及contains方法代码实例
2020/09/11 Python
基于Python实现粒子滤波效果
2020/12/01 Python
JBL英国官网:JBL UK
2018/07/04 全球购物
新西兰Bookabach:查找全球度假屋
2020/12/03 全球购物
汽车维修专业毕业生的求职信分享
2013/12/04 职场文书
写给女生的道歉信
2014/01/14 职场文书
信访工作经验交流材料
2014/05/23 职场文书
写景作文评语集锦
2014/12/25 职场文书
云冈石窟导游词
2015/02/04 职场文书
小学校长个人总结
2015/03/03 职场文书
2016新春团拜会致辞
2015/08/01 职场文书
Go web入门Go pongo2模板引擎
2022/05/20 Golang