我有一個網站,我想顯示過去24小時內發佈的文章。我認爲這很容易,但我不明白我做錯了什麼。日期過濾在mysql中不起作用,php
讓我們從一開始啓動,在mysql中我有這個表:
id | editor | article | date
-----------------------------
128| 8 | .... | 2013-03-20 01:01:26
129| 8 | .... | 2013-03-20 01:03:24
日期字段是TIMESTAMP。
現在在PHP我有這樣的代碼:
$date = date('Y-m-d H:i:s', strtotime('-1 day')); //24 hours ago
$articles = mysql_query("SELECT * FROM articles WHERE editor=8 AND 'date' > '".$date."' ORDER BY id DESC");
如果我現在運行此代碼,我的本地時間戳是「2013年3月21日15點20分07秒」(比文章超過24小時時間戳)我仍然拿到文章,雖然我不應該因爲2013-03-20 01:01:26(文章128時間戳)< 2013-03-20 15:20:07(現在 - 1天)。我也通過phpmyadmin運行代碼和結果相同。
我看不出我做錯了什麼,我試着用我的數據庫的其他表格試驗有日期字段,我仍然無法讓它工作。
非常感謝。
我將時間存儲爲秒(),使我能夠更自由和靈活地進行查詢。 – Suyash 2013-03-21 13:28:27