我想顯示我的整個表,但按天分組。顯示SQL項目的日子
所以以後我
SELECT * FROM events ORDER BY event_date, event_time
我想他們要顯示這樣。
<table>
<th><?php echo date('W M D', strtotime($row->event_date)); ?></th>
<tr>
<td>Location Time Event</td>
</tr>
<th><?php echo date('W M D', strtotime($row->event_date)); ?></th>
<tr>
<td>Location Time Event</td>
<td>Location Time Event</td>
</tr>
</table>
但我無法在任何地方找到一個例子。只分組和歸類項目。
編輯。我不想添加日期,但按天顯示項目。
實施例輸出
September 8th
-- Location Time Event
-- Location Time Event
September 9th
-- Location Time Event
October 10th
-- Location Time Event
EDIT 2.
改寫了代碼
<?php
require_once("config.php");
$results = $db->get_results('SELECT * FROM events ORDER BY event_date, event_time');
foreach($results as $row){
$row->id // all the items are available as objects
}
$curr_date = ''
foreach($results as $row){
if ($curr_date != $row->event_date){
/* Handle the date’s title here */
printf("<h1>%s</h1>", $row->event_date);
$curr_date = $row->date
}
/* Handle row items here */
printf("<tr><td>%s</td><td>%s</td></tr>", $row->presenter , $row->location);
}
?>
仍然接收錯誤。這裏出現誤差約爲$按行> ID突發T_VARIABLE
您可以遍歷它們,並將其添加到一個數組,如果你想這樣做在PHP。使索引成爲日期。 $ events [$ row-> event_date] [] = $ row;如果他們是相同的日期,他們將被加在一起 – wesside
或者不做多個循環。只需在循環中創建一個if子句並輸出分割內容所需的日期和HTML。 – ThoKra