【发布时间】:2018-05-31 13:12:03
【问题描述】:
我正在尝试以如下所示的格式从数据库中回显数据;
|column-1|column-2|column-3|column-4|column-5|
|--------|--------|--------|--------|--------|
|My Name | Date |Message | People |Phone #s|
| People |Phone #s|
| People |Phone #s|
| People |Phone #s|
| People |Phone #s|
也就是说,我从数据库中选择的数据是这样的,即第 4、5 列中的人从第 1 列中的人那里收到了消息(第 3 列)。但是根据我从数据库中回显数据的代码,我在第 4 列和第 5 列上为每个其他人创建了一个新列,如下所示;
|column-1|column-2|column-3|column-4|column-5|
|--------|--------|--------|--------|--------|
|My Name | Date |Message | People |Phone #s|
|My Name | Date |Message | People |Phone #s|
|My Name | Date |Message | People |Phone #s|
|My Name | Date |Message | People |Phone #s|
|My Name | Date |Message | People |Phone #s|
下面是我生成表格的php代码;
echo "<table id='table'>";
while($row=pg_fetch_assoc($result)){echo "<tr>";
echo "<td align='left' width='200'>" . $row['message_by'] . "</td>";
echo "<td align='left' width='200'>" . $row['message_date'] . "</td>";
echo "<td align='left' width='200'>" . $row['message_text'] . "</td>";
echo "<td align='left' width='200'>" . $row['phone_number'] . "</td>";
echo "<td align='left' width='200'>" . $row['recipient_name'] . "</td>";
echo "</tr>";}
echo "</table>";
所以问题是如何将第 4 列和第 5 列数据输出到单个单元格中,或者将数据回显到不同的单元格中而不重复第 1 到 3 列?
【问题讨论】:
-
存储(例如)message_by 的前一个值,如果在下一个循环中它是相同的值 - 不要输出它。
-
使用
rowspan和colspanattroftd。 -
rowspan和colspan将要求我为他们分配一个数字,我怎样才能根据从数据库返回的人数动态地实现呢?
标签: php html-table postgresql-9.1