我正在構建一個博客頁面。但是我開始在檔案部分掙扎。PHP,Mysql從strtotime獲取歸檔文件
我在MySQL的是時間標記使用註釋:
$timestamp = strtotime($month . " " . $date . " " . $year . " " . $time);
現在,如果我有去的鏈接:blog.php?Month=Febuary&Year=2012
我將如何使用這兩個參數在一個SQL查詢來檢索該月份和年份的所有記錄?
感謝,
本
我正在構建一個博客頁面。但是我開始在檔案部分掙扎。PHP,Mysql從strtotime獲取歸檔文件
我在MySQL的是時間標記使用註釋:
$timestamp = strtotime($month . " " . $date . " " . $year . " " . $time);
現在,如果我有去的鏈接:blog.php?Month=Febuary&Year=2012
我將如何使用這兩個參數在一個SQL查詢來檢索該月份和年份的所有記錄?
感謝,
本
編輯:改變了他們使用UNIX時間戳...
沒有必要strtotime()
按月查詢&年。相反,你可以這樣做:
SELECT *
FROM blogtbl
WHERE
YEAR(FROM_UNIXTIME(postdate)) = 2012
AND UPPER(MONTHNAME(FROM_UNIXTIME(postdate))) = 'FEBRUARY'
它也可以與DATE_FORMAT()
SELECT *
FROM blogtbl
WHERE
UPPER(DATE_FORMAT(FROM_UNIXTIME(postdate), '%M %Y')) = 'FEBRUARY 2012'
注意我用UPPER()
到查詢爲大寫,轉換做只是爲了使其更容易在PHP變量傳遞與不可預測的套管。
我們假設您已經知道如何從PHP中的查詢字符串中通過$_GET['Month'], $_GET['Year']
檢索月份和年份,並正確地將它們轉義以插入到您的查詢中。
嘗試過但沒有太多運氣, 我的mysql有一個unix格式的時間戳'1326905520' – 2012-02-19 22:36:03
@BenStringer使用'FROM_UNIXTIME()'將上面的修改轉換成MySQL DATETIME的unix時間戳。 – 2012-02-19 22:48:18
啊,謝謝你,會讓你知道我是怎麼得到的:) – 2012-02-20 01:01:39
如何將數據存儲在MySQL中? – 2012-02-19 21:13:56