2011-08-01 90 views
1

我在DB數據的加載和每行有一個日期列顯示結果取決於它的日期(月和年)

目前即時通訊拉動所有結果到一個頁面,但我想它分裂成個月。 我有我的網頁,單擊時按鈕2012年1月是單擊所有結果應只顯示相應的結果,例如,當該月將顯示

下面有什麼即時試圖實現一個例子上的按鈕: http://i.stack.imgur.com/PY7iN.jpg

============================================= ====================================

<?php 
$con = mysql_connect("localhost", "username", "pass"); 
if (!$con) 
{ 
die('Could not connect: ' . mysql_error()); 
} 

mysql_select_db("database", $con); 
$result = mysql_query("SELECT * FROM tablename"); 

$num_rows = mysql_num_rows($result); 

echo "<table border='0' cellspacing='0'>"; 

while($row = mysql_fetch_array($result)) 
{ 
$i++; 
if($i%2==0) $class="cell1"; else $class="cell2"; 
echo "<tr class='$class'>"; 
echo "<td>".$row["firstname"]." ".$row["lastname"]." thinks that it will happen on  
<span class=datecolor>".date('l jS F Y',strtotime($row['date']))."</span></td>"; 
echo "</tr>"; 
} 

    echo "</table>"; 

    mysql_close($con); 
    ?> 

======= ================================================== ================

我正在尋找一點幫助,我如何通過點擊按鈕顯示每個月的結果,而不是一次顯示所有的結果。

另外,當頁面第一次看到ID喜歡它自動顯示當月的結果,例如,如果現在認爲它會顯示該月產生

希望你能幫助

回答

1

要解決你的第一個問題(一次顯示一個月),你最好的選擇是讓你的數據庫爲你完成所有的工作。現在您的SQL SELECT語句看起來像

SELECT * FROM tablename 

您想添加一個WHERE條款,只顯示你行的某月,這將限制該查詢......類似

SELECT * FROM tablename WHERE date BETWEEN '05/01/2011' AND '05/31/2011' 

您可能需要調整你的特定數據庫引擎或設置。 Here's one WHERE tutorial;你可以在網上找到更多的東西。

0

喜歡的東西需要

$month = isset($_GET['month']) ? intval($_GET['month']) : 0; 
$year = isset($_GET['year']) ? intval($_GET['year']) : 0; 

if(empty($month)){ 
    $month = date('n'); 
} 
if(empty($year)){ 
    $year = date('Y'); 
} 

$query = mysql_query('SELECT * FROM table_name WHERE MONTH(date_field)="'.$month.'" AND YEAR(date_field)='.$year.'"'); 
// or maybe use BETWEEN syntax 

while(false!==($row=mysql_fetch_assoc($query))){ 
    // do something... 
} 

年,因爲一個月份數字可能屬於diffent年(03-2010,03-2011等),所以,當你的數據涵蓋不同年份的日期,你不能確定你只需要有月份什麼數據

+0

然後,我將如何鏈接按鈕,如果我是用這個? – Gerry

+0

即時通訊仍然有點不確定這將如何在我的代碼內以及按鈕如何鏈接, – Gerry

+0

這是您的選擇。如果您希望將年份和月份作爲數字傳遞給PHP,則可以使用像mypage.php這樣的地址進行鏈接。一個月= 3年= 2011'。當然,你必須將MySSQL連接初始化添加到循環內的代碼和表輸出中。 – Timur

相關問題