我有一些PHP代码可以在表中插入日期:
INSERT INTO tblEventLog VALUES ... date("Y-m-d H:i:s",time()) ...
结果通常是正确的,但偶尔的日期落后一小时:
315070 05-Sep-10 18:08
315069 05-Sep-10 18:07
315068 05-Sep-10 18:07
315067 05-Sep-10 18:06
315066 05-Sep-10 18:06
315065 05-Sep-10 17:04
315064 05-Sep-10 18:01
可能导致这种情况的原因是什么?只有一台服务器。
编辑:
使用NOW()工作!
问题是其中一个PHP页面正在改变时区(创建RSS提要时),PHP time()函数正在提取它。使用数据库设置固定时间的东西。
答案 0 :(得分:2)
我不确定是什么原因引起的。我建议将列数据类型切换为DATETIME
,如果您只是插入当前时间,则使用MySQL的NOW()
函数,而不是在PHP中占用时间。你在数据库中直接做的越多越好。这样做可以完全消除这个错误。