thinkphp中save遇到的错误

$log=M(‘User‘);

$data[‘id‘]=$uid[‘id‘];
$data[‘a_logip‘]=get_client_ip();
$data[‘a_logtime‘]=NOW_TIME;
$a=$log->table(‘er_admin‘)->save($data);

我这么写的时候系统总是提示错误,$data里面有id所以不用写where条件。

后来我把->table(‘er_admin‘)这句活去了,直接M(‘Admin‘)这时候问题就解决了

我测试过连贯函数table与save是一起使用的所以应该错在了自动查找这,

时间: 2024-10-15 11:04:01

thinkphp中save遇到的错误的相关文章

【转】ThinkPHP中数据库操作返回值总结

Thinkphp中的Think\Model类提供了数据库的基本CURD(Create.Update.Read及Delete),通过该类可以很便捷的进行操作.Model类及扩展类主要的方法有: Create操作:create()(非链式) .add().addAll()支持的链式操作有:table .data.field .relation .validate.auto .filter.scope .bind .token .comment Update操作save().setField().se

ThinkPHP中数据库操作返回值总结

转自:http://www.baiwar.com/post/thinkphp-database-operations-in-the-return-value.html Thinkphp中的Think\Model类提供了数据库的基本CURD(Create.Update.Read及Delete),通过该类可以很便捷的进行操作.Model类及扩展类主要的方法有: Create操作:create()(非链式) .add().addAll()支持的链式操作有:table .data.field .rela

ThinkPHP中的模型

ThinkPHP中的模型 1.什么是模型(Model) 模型表示企业数据和业务规则,实际项目开发中,主要实现与数据库进行操作. 2.模型的定义规则 模型类的命名规则是除去表前缀的数据表名称,采用驼峰法命名,并且首字母大写,然后加上模型类的关键词Model,再加上类文件后缀.class.php 案例:实现移动办公自动化系统的组织结构功能 ① 设计数据库db_think ② 设计数据表结构(tk_dept) id ???? 编号 ????int 自动增长 主键 name 部门名称 varchar(4

thinkphp 的save()不能更新数据解决办法

用save()方法始终更新不了数据,又不显示明确的错误信息,找了好久才在手册里看到一句至关重要的话: 为了保证数据库的安全,避免出错更新整个数据表,如果没有任何更新条件,数据对象本身也不包含主键字段的话,save方法不会更新任何数据库的记录. 因此在使用create自动更新数据时,要在表单添加一个隐藏域,其值为数据表的id值! thinkphp 的save()不能更新数据解决办法,布布扣,bubuko.com

ThinkPHP中实例化对象M()和D()的区别,select和find的区别

原文:ThinkPHP中实例化对象M()和D()的区别,select和find的区别 1.ThinkPHP中实例化对象M()和D()的区别 在实例化的过程中,经常使用D方法和M方法,这两个方法的区别在于M方法实例化模型无需用户为每个数据表定义模型类,如果D方法没有找到定义的模型类,则会自动调用M方法.通俗一点说:M实例化参数是数据库的表名.D实例化的是你自己在Model文件夹下面建立的模型文件 例如:$user = new UserModel(); 等价于$user = D('user'); 如

thinkphp中的配置文件一般写法

thinkphp中的配置文件一般写法 本文摘自:开源it return array( //数据库配置 'DB_TYPE' => 'mysql', 'DB_HOST' => 'localhost', 'DB_NAME' => 'myshopkuaican', 'DB_USER' => 'root', 'DB_PWD' => '', 'DB_PORT' => '3306', 'DB_PREFIX' => 'think_', //默认控制器 //'DEFAULT_MOD

深入解析thinkphp中的addAll方法

原因: 在做中控系统中遇到了一个给用户批量分配角色的问题,刚开始想到的是循环插入,但立马给否定了,循环操作数据库开发者的大忌啊,于是查找手册找到数据写入看到批量操作:addAll(),测试成功,以为万事大吉了,但当第二次操作时提示失败,找原因,原来是数据库中已经存在的数据addAll()没有覆盖导致了错误 解决方法: 查找Thinkphp源码翻到Library/Think/Model.class.php找到了addAll方法:public function addAll($dataList,$o

ThinkPHP中initialize和construct的不同

本文转载自:http://www.kuitao8.com/20140819/2953.shtml ThinkPHP中initialize()和construct()这两个函数都可以理解为构造函数,前面一个是tp框架独有的,后面的是php构造函数,那么这两个有什么不同呢? 在网上搜索,很多答案是两者是一样的,ThinkPHP中initialize相当于php的construct,这么说是错误的,如果这样,tp为什么不用construct,而要自己弄一个ThinkPHP版的initialize构造函

thinkPHP中的三大自动

class UserModel extends Model{ protected  $_validate=array( //下面还需要再写数组.一个数组就是一条验证规则 //array('验证字段','验证规则','错误提示','验证条件','附加规则','验证时间'), //验证字段:需要验证的表单字段名称,也可以表单当中的一些辅助字段,例如验证码,附加码,重复密码等 //验证规则,验证规则必须要结合附加规则一起使用 //错误提示:如果出现错误,抛出一个什么样的错误提示告知用户 //验证条件: