我需要用从MySQL返回的数据在PHP中创建3个HTML列。我希望数据在所有3列中平均分配...我该怎么做呢?
发布于 2011-12-29 03:57:18
您可以尝试这样做:
$result = mysql_query("SELECT value FROM table");
$i = 0;
echo '<table><tr>';
while ($row = mysql_fetch_row($result)){
echo '<td>' . $row[0] . '</td>';
if ($i++ == 2) echo '</tr><tr>'
}
echo '</tr></table>';请注意,此表的值排序如下
1 2 3
4 5 6
7 8 9如果你想让它垂直的话
1 4 7
2 5 8
3 6 9那么你应该做一些类似这样的事情
$result = mysql_query("SELECT value FROM table");
$data = Array();
while ($row = mysql_fetch_row($result)) $data[] = $row;
for ($i = 0; $i < count($data) / 3; $i++){
echo '<table><tr>';
for ($j = 0; $j < 3; $j++){
echo '<td>' . $data[ $i + $j * 3] . '</td>';
}
echo '</tr><tr>'
}
echo '</tr></table>';发布于 2011-12-29 03:45:45
您可以创建一个HTML表,然后使用PHP foreach循环遍历MySQL结果集,并将每个字段放入其自己的表中。在MySQL查询返回的每条记录的末尾,结束表行并开始一个新记录。
发布于 2012-10-22 11:25:03
一个小细节,如果返回的条目比"fetch_row“多,则根据@Robbie:Spliting mysql data in 3 columns error -3-fetch_row-error的答案使用"break”
https://stackoverflow.com/questions/8660484
复制相似问题