我从mysql查询中输出4列,但是使用下面的代码不会将每个列与标题对齐,我想这是因为这是针对动态行声明的静态。有人可以建议一种方法来正确地将标题与每个读取的列对齐,
$tableStyle = "padding: 5px;border:1px";
$tdStyle = "padding:5px ";
$thStyle = "padding:5px; align:center ";
echo '<table style="' . $tableStyle . '" cellpadding="7" cellspacing="7">';
echo "<tr> <th>Quiz Title </th><th> Score </th><th>Maximum Score </th><th>Finished On </th></tr>";
$row = $database->loadRowList();
foreach($row as $valuearray)
{
echo '<tr style=" align="center">';
foreach($valuearray as $field)
{
echo "<td>$field</td>";
}
echo "</tr>";
}
echo "</table>";
答案 0 :(得分:1)
这一行错了:
echo '<tr style=" align="center">';
我想你想要:
echo '<tr style="text-align:center;">';
答案 1 :(得分:0)
你在使用Joomla吗? loadRowList()
暗示了这一点。如果是,请改用loadAssocList()
,它返回字段名称和字段值。然后,您可以执行单独的循环以输出列标题,并确保它们与数据字段匹配。
此处函数的文档:http://help.joomla.org/content/view/509/60/
你会做类似的事情:$rows = $database->loadAssocList();
echo '<tr>';
foreach(array_keys($rows[0]) as $header) {
echo "<th>$header</th>";
}
echo '</tr>';
foreach ($rows as $row) {
echo '<tr>';
foreach($row as $value) {
echo "<td>$value</td>";
}
echo '</tr>';
}