当前位置: 首页 > 编程笔记 >

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

司寇羽
2023-03-14
本文向大家介绍ThinkPHP实现更新数据实例详解(demo),包括了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 "> &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

 类似资料:
  • 本文向大家介绍基于ThinkPHP实现的日历功能实例详解,包括了基于ThinkPHP实现的日历功能实例详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了基于ThinkPHP实现的日历功能。分享给大家供大家参考,具体如下: 开发环境介绍 最新,闲来没事,便开发了一款简单的日历,来统计工作情况。为了开发便捷,使用ThinkPHP架构。界面如下图 备注:每页包含上一个月,当前月,下一个月的日期

  • 本文向大家介绍ThinkPHP之M方法实例详解,包括了ThinkPHP之M方法实例详解的使用技巧和注意事项,需要的朋友参考一下 M方法用于实例化一个基础模型类,和D方法的区别在于: 1、不需要自定义模型类,减少IO加载,性能较好; 2、实例化后只能调用基础模型类(默认是Model类)中的方法; 3、可以在实例化的时候指定表前缀、数据库和数据库的连接信息; D方法的强大则体现在你封装的自定义模型类有

  • 本文向大家介绍ThinkPHP之import方法实例详解,包括了ThinkPHP之import方法实例详解的使用技巧和注意事项,需要的朋友参考一下 import方法是ThinkPHP框架用于类库导入的封装实现,尤其对于项目类库、扩展类库和第三方类库的导入支持,import方法早期的版本可以和java的import方法一样导入目录和通配符导入,后来考虑到性能问题,在后续的版本更新中不断改进和简化了,

  • 本文向大家介绍ThinkPHP之N方法实例详解,包括了ThinkPHP之N方法实例详解的使用技巧和注意事项,需要的朋友参考一下 ThinkPHP的N方法属于计数器方法,被用于核心的查询、缓存统计的计数和统计。但是其实可以用于应用的其他计数用途,用法比较简单,调用格式: N('计数位置'[,'步进值']) 例如,我们要统计页面中的查询次数,可以用 表示每次执行到该位置都会引起计数器加1,到页面结束之

  • 本文向大家介绍ThinkPHP之R方法实例详解,包括了ThinkPHP之R方法实例详解的使用技巧和注意事项,需要的朋友参考一下 ThinkPHP的R方法用于调用某个控制器的操作方法,是A方法的进一步增强和补充。 R方法的调用格式: R('[项目://][分组/]模块/操作','参数','控制器层名称') 例如,我们定义了一个操作方法为: 那么就可以通过R方法在其他控制器里面调用这个操作方法(一般R

  • 主要内容:所需步骤,示例代码在本教程将演示如何在JDBC应用程序中,更新数据库的一个表中数据记录。 在执行以下示例之前,请确保您已经准备好以下操作: 具有数据库管理员权限,以在给定模式的数据库表中更新数据记录。 要执行以下示例,需要用实际用户名和密码替换这里用户名()和密码()。 MySQL或数据库已启动并运行。 所需步骤 使用JDBC应用程序向表中更新数据记录需要以下步骤: 导入包:需要包含包含数据库编程所需的JDBC类的