2011-05-26 25 views
0

我在文件(test.php)中回顯如下內容。如何傳遞值並顯示標題列表?

.... 
201105 
201106 
201107 
201108 
201109 
201110 
.... 

代碼輸出它:

$months = 10; //count of months 
$date = date_create('now'); 
echo date_format($date, 'Y M'); 
for ($i = 0; $i < $months; $i++) { 
    date_sub($date , date_interval_create_from_date_string('1 months')); 
    echo date_format($date, 'Y M'); 
} 

上面是年月存檔。現在我想當用戶點擊年份。那麼在當前頁面顯示每個文章的標題與列表屬於年份。我知道我應該使用一個傳遞值到我的數據庫查詢來選擇出每篇文章的title.each文章創建時間是這樣15806927473。但我不知道如何通過價值。當用戶點擊年份時。並在我的sql查詢中使用傳遞的值。 謝謝。

SQL查詢代碼:

$result=mysql_query("select title from node where a > created_time > b "); 

如何禮儀中的a和b。並使得傳遞的值時間與此風格15806927473相比。

數據庫是mysql。

回答

1

158...值最有可能是unix時間戳,即自1970年1月1日以來的秒數。你沒有指定你正在使用哪個數據庫,所以無法正確幫助你。但是,假設您使用MySQL,則可以使用FROM_UNIXTIME()UNIX_TIMESTAMP()輕鬆地在時間戳和日期/時間值之間進行轉換。

您不指定如何生成您的年/月值,但執行一些字符串操作將'201105'變爲'2011-05-01 00:00:00'並不難,您可以作爲日期/時間值傳入MySQL以在數據庫中進行比較。

至於你的a> c> b構造,這是一個語法錯誤。你想它看起來像:

... WHERE (a > created_time) AND (a > b) 
+0

謝謝你,我已經更新了問題。 – zhuanzhou 2011-05-26 14:53:22

+0

我認爲a,b是知道的。因爲a是月份的第一天.b是月份的最後一天。但每個月的最後一天可能不同。如何通過他們? – zhuanzhou 2011-05-26 14:55:52

+1

不要根據月份來做。試着做'where(Month(created_time)= 5)和(Year(created_time)= 2011)',這樣就不需要計算實際的日子。 – 2011-05-26 15:00:59

相關問題