ThinkPHP save() 方法
来源:互联网 发布:js json遍历 编辑:程序博客网 时间:2024/06/17 23:54
public function update(){ header("Content-Type:text/html; charset=utf-8"); $Dao = M("User"); // 需要更新的数据 $data['email'] = 'Jack@163.com'; // 更新的条件 $condition['username'] = 'Jack'; $result = $Dao->where($condition)->save($data); //或者:$resul t= $Dao->where($condition)->data($data)->save(); if($result !== false){ echo '数据更新成功!'; }else{ echo '数据更新失败!'; }}
上面例子执行的 SQL 语句为:
UPDATE user SET email='Jack@163.com' WHERE username='Jack'//
condition里面的字段名就是你需要更新的库里的条件字段,而data里的字段就是你要更新的那条字段。从上面的等价语句可以很清晰的了解这点。提示为了保证数据库的安全,避免出错更新整个数据表,如果没有任何更新条件,数据对象本身也不包含主键字段的话,save方法不会更新任何数据库的记录。
因此要使用 save() 方法更新数据,必须指定更新条件或者更新的数据中包含主键字段。
使用主键的例子:
public function update(){ header("Content-Type:text/html; charset=utf-8"); $Dao = M("User"); // 需要更新的数据 $data['email'] = 'Jack@163.com'; $data['uid'] = 2;//包含主键信息 $result = $Dao->save($data); if($result !== false){ echo '数据更新成功!'; }else{ echo '数据更新失败!'; }}如果需要更新的数据里面包含主键,那么 ThinkPHP 会自动把主键的值作为条件来更新。上面的例子跟下面的效果相同:
// 需要更新的数据 $data['email'] = 'Jack@163.com'; // 更新的条件 $condition['uid'] = 2; $result = $Dao->where($condition)->save($data);如果是表单数据,还可以使用 create() 方法创建数据对象来更新数据:
public function update(){ header("Content-Type:text/html; charset=utf-8"); $Dao = D("User"); if($vo = $Dao->create()) { $result = $Dao->save(); if($result !== false){ echo '数据更新成功!'; }else{ echo '数据更新失败!'; } }else{ $this->error($Form->getError());//不懂这里的更新信息在哪里? }}
如果更新的数据需要做逻辑处理,可以在操作类以对象的方式处理或者在模型内处理,具体可参考《ThinkPHP 表单数据智能写入 create 方法》。
2017-12-06
做
赛事报名系统后台修改赛事信息时组别中的赛事字段同步修改功能时用到。
阅读全文
0 0
- ThinkPHP save() 方法
- Thinkphp Save方法更新问题
- ThinkPHP save()方法失效的几种可能情况
- 【PHP】【Mysql】【thinkphp】,Thinkphp save()方法执行update操作的返回值问题
- save方法
- ThinkPHP--实现数据修改save
- THinkphp save方法 判断如果没有数据更新 报错问题
- 如何用ThinkPHP的Save方法,保存未被修改的数值
- 在使用ThinkPHP时候数据更新的时候,save()方法返回值为0的问题!!!!
- thinkphp中save方法更新的值和原来的值一样的时候返回false
- thinkphp 修改后的数据和原数据一样,save方法返回值
- thinkphp save($data)的返回值
- thinkphp save判断是否修改成功
- 关于thinkphp的save小错误
- thinkphp之数据库更新操作方法save
- Session的save()方法
- FileReference.save()方法找不到?
- Session的save()方法 .
- 欢迎使用CSDN-markdown编辑器
- 【零基础】HBase从学习入门开始
- 用Python实现机器学习算法
- java web项目的启动及初始化
- jQuery插件之【jqGrid】常用语法整理
- ThinkPHP save() 方法
- 类型转换
- maven项目install时候一直报错,检查Maven-javadoc-plugin声明错误(Java 8 配置Maven-javadoc-plugin)
- 6.信息论(一):信息量、熵和最优编码
- ORA-29786: SIHA attribute GET failed with error
- 递归实现 满二叉树的节点数计算
- 计算机网络作业四
- JAVA NIO 读写文件
- python中datetime与str的互相转化