我正在尝试循环MySQL结果并返回相同的日期&代理商在一个单独的。包含此数据的表格包含每个代理在特定日期工作的票证数。每组日期应由表中的空行分隔。以下是我正在使用的代码。我相信我必须做一个foreach,但不知道如何让它工作。
以下是我希望实现的最终桌面布局的截图。
if($res && mysql_num_rows($res))
{
while($row = mysql_fetch_array($res))
{
if ($row['total_updated'] > 0) {
print "<tr>";
print "<td align=center>" . $row['date_added'] . "</td>";
print "<td nowrap>" . $row['agent'] . "</td>";
print "<td nowrap>" . $row['agent_location'] . "</td>";
print "<td align=center>" . number_format($row['total_updated']) . "</td>";
print "<td align=center>" . number_format($row['total_notes']) . "</td>";
print "<td align=center>" . number_format($row['total_closed']) . "</td>";
print "<td align=center>" . number_format($row['ticket_app1_updated']) . "</td>";
print "<td align=center>" . number_format($row['ticket_app1_notes']) . "</td>";
print "<td align=center>" . number_format($row['ticket_app1_closed']) . "</td>";
print "<td align=center>" . number_format($row['ticket_app2_updated']) . "</td>";
print "<td align=center>" . number_format($row['ticket_app2_notes']) . "</td>";
print "<td align=center>" . number_format($row['ticket_app2_closed']) . "</td>";
print "<td align=center>" . number_format($row['ticket_app3_updated']) . "</td>";
print "<td align=center>" . number_format($row['ticket_app3_notes']) . "</td>";
print "<td align=center>" . number_format($row['ticket_app3_closed']) . "</td>";
print "</tr>";
}
}
}
print "</table>";
答案 0 :(得分:1)
如果您按date_added对结果进行排序,则不需要任何foreach,只需将之前的日期与当前日期进行比较:
while($row = mysql_fetch_array($res))
{
if (!isset($lastdate))
$lastdate = $row['date_added'];
if ($lastdate != $row['date_added']) {
?><tr><td colspan="15">---blank line---</td></tr> <?php
}
//paste all of your prints here
$lastdate = $row['date_added'];
}