2012-04-05 67 views
1

我正在嘗試使用mysql條目的時間戳,但它顯示爲20小時後。mysql/php時區問題

當我鍵入以下到mysql命令行正確的時間顯示(這是目前8:15 PM東區)

SELECT NOW(); 

當我提交的東西到使用以下我的數據庫,一切都只是正確的時間顯示爲上午12:15。

date('m/d/Y,h:i:a'); 

如果有問題,我的表中的列是varchar(20)。

我也試圖確定它設置爲東部時區使用,但得到了一個錯誤說不正確的時區。

SET time_zone = 'America/New_York'; 

有沒有人有一個線索,爲什麼我走了20個小時我DATABSE條目,但是當我用mysql命令行來查找它的正確顯示時間?

回答

2

我假設這是一個PHP時區問題。你應該檢查你的PHP ini文件中設置了什麼時區。

[Date] 
; Defines the default timezone used by the date functions 
date.timezone = America/New_York 

您也可以設定在腳本中的時區:

ini_set('date.timezone', 'America/New_York'); 

好像你試圖更改時區,在MySQL。你也應該檢查你的時區設置MySQL,只是爲了確保。

+0

究竟在我的腳本中,我設置了它?我使用變量$ timestamp = date('m/d/Y,h:i:a');然後輸入該變量。我會在變量之前設置它嗎? – user1104854 2012-04-05 00:34:34

+0

是的,只是在腳本的開頭執行ini_set。 – Gohn67 2012-04-05 00:37:10

+0

要測試,只需打印日期以查看它是否在正確的時區。 – Gohn67 2012-04-05 00:37:37