php向数据库中的表中某个字段传值不成功

项目中使用的是php3.2.3框架,我想将收到某个特殊标志位的信息时的系统时间作为心跳时间,通过sava()传值后,数据库中的那个字段还是显示为空。
if ($j_data['Alarm'] == No){
$db = new MysqliDb (Array());
$hearttime = date('y-m-d h:i:s') ;
$data['hearttime'] = $hearttime;
$db->table('smoke')->alias('z')->join("seat s", "z.z_f_id=s.mid", "left");
$map[s.s_realid] = '$j_data[Mid]';
$map[z.z_realid] = '$j_data[Sid]';
$db->table('smoke')->where($map)->field('hearttime')->save($data);
};
这是写在服务器上的程序,所以不太好调试,但是数据库中的hearttime字段仍然为空,求大佬帮忙。

2个回答

hearttime在数据库是什么类型,是date类型,还是int

l251425635
Yikair 回复king520mjg: 我把那个heartime的类型改为timestamp就可以传进去了,因为获取的是当前时间,所以类型和数据库的类型不一致所以传不进去,现在修改后已经可以了。
一年多之前 回复
king520mjg
king520mjg 回复l251425635: 多少个字符 咋不用varchar 20
一年多之前 回复
l251425635
Yikair 是char类型的
一年多之前 回复

$map[s.s_realid] = '$j_data[Mid]';
$map[z.z_realid] = '$j_data[Sid]';
这个写错了吧

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!