gpt4 book ai didi

php - SQL 查询中每个日期的 HTML 表

转载 作者:行者123 更新时间:2023-11-29 00:25:26 25 4
gpt4 key购买 nike

我需要将 SQL 查询的结果输出为每个日期的表格。每个日期都有几行,其中包含唯一 ID、系统名称和备注。

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$dbname") or die("cannot select DB");


$query = "
SELECT id, Date, System, Remark FROM records WHERE Date BETWEEN '$from' AND '$to'
ORDER BY Date, CASE System
WHEN 'System1' THEN 1
WHEN 'System2' THEN 2
WHEN 'System4' THEN 3
WHEN 'System5' THEN 4
ELSE 19
END
";

$result = mysql_query($query);

我如何继续生成一个包含具有相同日期的所有行的表:

<table>
<tr><th colspan="3"> Display date here</th></tr>
<tr>
<td>Display System here</td>
<td>Display Remark here</td>
<td>Display id here</td>
</tr>
<tr>
<td>Display System here</td>
<td>Display Remark here</td>
<td>Display id here</td>
</tr>
<tr>
<td>Display System here</td>
<td>Display Remark here</td>
<td>Display id here</td>
</tr>
</table>

最佳答案

试试这个

<php
$previous_date="";

echo "<table>";
while ($row=mysql_fetch_array($result))
{
$new_date=$row["date"];
if ($previous_date!=$new_date && $previous_date!="")
echo "</table><table>";

if ($previous_date!=$new_date)
echo "<tr><th colspan='3'>".$row["date"]."</th></tr>";

echo "<tr>";
echo "<td>".$row["system"]."</td>";
echo "<td>".$row["remark"]."</td>";
echo "<td>".$row["id"]."</td>";
echo "</tr>";

$previous_date=$new_date;
}
echo "</table>";
?>

已编辑

添加说明:

对于每个循环,我检查这是否是一个新日期。如果是,那么我关闭之前的表格,创建一个新表格并回显表格标题。

我必须处理第一个表被打开的情况(这是 $previous_date 为空时的情况)。然后我只插入标题。

第一个表在 while 循环之前打开,最后一个表在 while 循环之后关闭。

关于php - SQL 查询中每个日期的 HTML 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19154884/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com