[英]Multi-Column Table Display from one MySQL table
我在顯示MySQL表中的多個列時遇到問題。
這很簡單-我有28條記錄,並且我想做7行,每行4條-每條記錄只有兩列-id#和name(表中的“ handle”)。
我的問題是,當我使用
> $i<$cols
我得到了四列,但第四列為空白,並且跳過了每四個記錄(#4,#8等)。簡單地說,我只是...使其$row && $i<=$cols
<=以$i
變量為條件...但是然后它只是忽略if語句並在頁面上顯示所有記錄。 我究竟做錯了什么? 我是否需要另一個if
語句圍繞該語句? 不知道我要去哪里錯...
到目前為止,這是我到達的地方:
// Table header.
echo '<center><table align="center" BLAH BLAH BLAH</b></td></tr><tr>';
do {
// Fetch and print all the records:
$cols = 4;
for($i=1;$i<=$cols;$i++){
$row = mysqli_fetch_array($r, MYSQLI_ASSOC);
if($row && $i<$cols){
echo '<td align="center" bgcolor="' . '#' . $row['color'] . '"><b>' .
$row['player_id'] . '</td></b><td align="left" bgcolor="' . '#' .
$row['color'] . '"><b>' . strtoupper($row['handle']) . '</td></b>';
}
else {
echo '</tr>';
}
}
}
while ($row);
echo '</table></center>'; // Close the table.
只需將echo '</tr>'
移動到for循環之外即可。 讓do ... while循環打開並關閉<tr>
標記:
// Table header.
echo '<center><table align="center" BLAH BLAH BLAH</b></td></tr>';
do {
echo '<tr>';
// Fetch and print all the records:
$row = mysqli_fetch_array($r, MYSQLI_ASSOC);
if($row){
echo '<td align="center" bgcolor="' . '#' . $row['color'] . '"><b>' .
$row['player_id'] . '</b></td><td align="left" bgcolor="' . '#' .
$row['color'] . '"><b>' . strtoupper($row['handle']) . '</b></td>';
}
echo '</tr>';
} while ($row); echo '</table></center>'; // Close the table.
編輯:剛剛意識到你不需要for循環。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.