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

所属分类: 网络编程 / PHP编程 阅读数: 1150
收藏 0 赞 0 分享

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

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

  首先依然是预期效果图:

  

点击修改后进入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 "> &nbsp;&nbsp;保<img src="__PUBLIC__/end/images/em.png" alt="" width="20" height="20">存&nbsp;&nbsp;</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实现的美国50个州选择列表实例

这篇文章主要介绍了php实现的美国50个州选择列表实例,可实现让当前州为选中状态的功能,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP使用递归生成文章树

写递归函数,可考虑缓存,定义一些静态变量来存上一次运行的结果,多程序运行效率很有帮助.大概步骤如下:首先到数据库取数据,放到一个数组,然后把数据转化为一个树型状的数组,最后把这个树型状的数组转为html代码。下面我们来看个实例
收藏 0 赞 0 分享

wordpress安装过程中遇到中文乱码的处理方法

这篇文章主要介绍了wordpress安装过程中遇到中文乱码的处理方法,是个人项目中遇到的一个奇葩事件,经过一番研究,终于解决,这里记录下来分享给大家,有需要的小伙伴可以参考下。
收藏 0 赞 0 分享

php的crc32函数使用时需要注意的问题(不然就是坑)

这篇文章主要介绍了php的crc32函数使用时需要注意的问题(不然就是坑) ,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP中把对象转换为关联数组代码分享

这篇文章主要介绍了PHP中把对象转换为关联数组代码分享,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

php检测url是否存在的方法

这篇文章主要介绍了php检测url是否存在的方法,涉及php中get_headers及正则匹配的技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

php获取twitter最新消息的方法

这篇文章主要介绍了php获取twitter最新消息的方法,涉及php操作curl及正则替换的技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

php遍历CSV类实例

这篇文章主要介绍了php遍历CSV类,实例分析了php针对csv文件的打开、读取及遍历的技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP使用mysqldump命令导出数据库

最近用php写一个数据备份的功能。做法是使用php的system函数执行mysqldump命令,进行备份,这里分享给大家,有需要的小伙伴可以参考下。
收藏 0 赞 0 分享

PHP用反撇号执行外部命令

shell_exec() 命令行实际上仅是反撇号 ` 操作符的变体,如果您编写过 shell 或 Perl 脚本,您就知道可以在反撇号操作符内部捕捉其他命令的输出。
收藏 0 赞 0 分享
查看更多