在查询数据库时,如何对HTML表格列的数量施加限制。
例如,我有一个MySQL表,其中包含以下值:
myTable:
id color
1 red
2 blue
3 green
4 pink
5 purple
当我运行查询时,而不是显示传统表行中的所有行,例如
<table>
<?php
while {
echo "<tr><td>$row['color']</td></tr>;
}
?>
</table>
相反,我想强加一些东西,每三个td创建一个新的tr。
例如,它会输出如下内容:
<table>
<tr>
<td>red</td>
<td>blue</td>
<td>green</td>
</tr> <-- Notice how after 3 columns, a new table row is created.
<tr>
<td>pink</td>
<td>purple</td>
</tr>
</table>
有任何方法可以实现这一目标吗?
答案 0 :(得分:2)
为了实现这一目标,您可以使用计数器和modulus (%
)运算符的组合:
<table>
<?php
$count = 0;
while($row = mysql_fetch_array($results)) {
$outputTr = ($count % 3) == 0;
if($outputTr) echo '<tr>';
echo '<td>' . $row['color'] . '</td>';
if($outputTr) echo '</tr>';
$count++;
}
?>
</table>
答案 1 :(得分:1)
为实现这一目标,请放入一个简单的计数器,重置每3个表数据。
<?php
echo "<table><tr>";
$count = 0;
foreach($data as $key => $color)
{
if($count == 3)
{
$count = 0;
echo "</tr><tr>";
}
$count++;
echo "<td>".$color."</td>";
}
echo "</tr></table>";
?>