2011-12-28 62 views
1

我需要在PHP中用MySQL返回的數據創建3個HTML列。我希望所有3列之間的數據平均分配......我怎麼去做這件事?將PHP/MySQL數據分割成3列

+1

這是無關的PHP/MySQL的。這是一個HTML問題... – 2011-12-28 19:43:50

+1

該代碼將在PHP中... – 2011-12-28 19:45:42

+0

@Chris:是的,但大概問題是HTML生成的問題。 – 2011-12-28 19:46:57

回答

5

你可以嘗試做這樣的事情:

$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>'; 
+0

FFS,請停止使用古老的'mysql_ *'功能,並教導其他人這樣做。 -1 – 2011-12-28 20:05:20

+0

我通常會使用PDO,但是如何檢索數據並不是我的迴應的重點。這個問題問到如何將數據分成3列,無論如何獲得結果行,都可以使用所使用的方法 – arcyqwerty 2011-12-28 20:10:00

+0

好吧!它的工作原理(:謝謝你! – 2011-12-28 20:10:27

0

您可以創建一個HTML表格,然後使用PHP foreach循環遍歷MySQL結果集並將每個字段放在其自己的表中。在MySQL查詢返回的每條記錄的末尾,結束表格行並開始一個新行。

0

FFS,請停止使用古老的mysql_ *函數,並教導其他人這樣做。 用mysqli代替?

+0

是的,他指的是MySQLi,http://php.net/manual/en/ref.pdo-mysql.php - PDO本質上是MySQLi – 2011-12-28 20:18:17