像这样创建一个html表

时间:2010-01-10 14:34:27

标签: php mysql html

我在DB中有一个表,它在组之间交换消息,我需要创建一个像这样的表(两组之间交换的消息):

Table Matrix with Group names and message count between Groups names http://www.freeimagehosting.net/uploads/10b1fb8eeb.jpg

知道Gr1,....是来自DB的组名,数字也来自DB。

编辑添加sQL查询(由Sarah在评论中给出 - 下面):

(SELECT COUNT( Msg_ID ) AS msgcount, Group_ID, To_Group_ID FROM messages GROUP BY Group_ID, To_Group_ID)

3 个答案:

答案 0 :(得分:0)

在这里,没有钟声和口哨。将“CELL”替换为您的内容:

<table>
  <tr>
     <td>CELL</td>
     <td>CELL</td>
     <td>CELL</td>
     <td>CELL</td>
  </tr>
  <tr>
     <td>CELL</td>
     <td>CELL</td>
     <td>CELL</td>
     <td>CELL</td>
  </tr>
  <tr>
     <td>CELL</td>
     <td>CELL</td>
     <td>CELL</td>
     <td>CELL</td>
  </tr>
</table>

答案 1 :(得分:0)

将查询结果放在像

这样的数组中
$query = mysql_query('SELECT from_group, to_group, value FROM table')
while($row = mysql_fetch_array($query))
    $results[$row['from_group']][$row['to_group']] = $row['value'];

然后迭代数组,生成表格的标题,如

echo "<table><tr>'"
foreach ($results as $group => $group_array)
  echo "<td>$group</td>";
echo "</tr>";

然后再次迭代以构建字段:

foreach ($results as $from_group => $from_group_array)
{
  echo "<tr><td>$from_group</td>";
  foreach ($from_group_array as $cell_value)
     echo "<td>$cell_value</td>";
  echo "</tr>";
}

最后完成表格。

这个例子迅速汇总,以便了解如何继续并可能包含错误......并且可以写得更好!“

答案 2 :(得分:0)

如果您的问题与HTML有关,则可以使用“colspan”属性。我在这里做了一个例子:

        <table border="1px" cellpadding="4">
            <tr>
                <th colspan="2">Global status</th>
                <th>Title here</th>
                <th>Title here</th>
                <th>Title here</th>
                <th>Title here</th>
            </tr>
            <tr>
                <td>text</td>
                <td>text</td>
                <td>text</td>
                <td>text</td>
                <td>text</td>
                <td>text</td>
            </tr>
            <tr>
                <td>text</td>
                <td>text</td>
                <td>text</td>
                <td>text</td>
                <td>text</td>
                <td>text</td>
            </tr>
        </table>

您可以使用CSS进行更多样式化,但这是第二部分。我希望我能帮到你。祝你好运