I have some PHP code that inserts a date into a table:
INSERT INTO tblEventLog VALUES ... date("Y-m-d H:i:s",time()) ...
The results of this are usually correct, but the occasional date is an hour behind:
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 0开发者_运维百科5-Sep-10 18:01
What could be causing this? There is only a single server.
EDIT:
Using NOW() Worked! The problem was that one of the PHP pages was changing the timezone (when creating a RSS feed) and the PHP time() function was picking that up. Using the database to set the time fixed things.I'm not sure what could cause this. I'd recommend switching the column data type to DATETIME
, though, and if you're just inserting the current time then use MySQL's NOW()
function rather than grabbing the time in PHP. The more you can do directly in the database the better. Doing this might obviate this bug entirely.
精彩评论