[英]php multiple alternate column loop
我是php和html的新手,我試圖從數據庫表記錄集創建這樣的輸出。 其中“表記錄n”是數據庫表記錄集中的列
基本上,表將是1x2x1x2x4列,具有5行
<table border=1>
<tr>
<td>table record 1 </td>
</tr>
<tr>
<td> table record 2 </td> <td>table record 3 </td>
</tr>
<tr>
<td> table record 4 </td>
</tr>
<tr>
<td> table record 5 </td> <td>table record 6 </td>
</tr>
<tr>
<td> table record 7 </td>
<td>table record 8 </td>
<td> table record 9 </td>
<td>table record 10</td>
</tr>
</table>
我只到這一個
$next_Column = 1;
echo "<tr>";
while ( $row = mysql_fetch_array( $result ) )
{
echo "<td>". $row['name']. "</td>";
$next_Column ++;
if( $next_Column > 1 )
{
echo "<tr>";
$next_Column = 1;
}
}
?>
上面的循環將始終回顯<tr>
,因為進入if
, $next_column
始終為>1。您需要使用嵌套循環來遍歷各列。 類似於此頁上的代碼應有所幫助。 雖然,如果您知道您需要准確的格式,為什么不就這樣制作您的php?
<table border=1>
<?php
while ( $row = mysql_fetch_array( $result ) )
{
echo '<tr><td>' . $row[0] . '</td></tr>';
echo '<tr><td>' . $row[1] . '</td><td>' . $row[2] . '</td></tr>';
echo '<tr><td>' . $row[3] . '</td></tr>';
echo '<tr><td>' . $row[4] . '</td><td>' . $row[5] . '</td></tr>';
echo '<tr><td>' . $row[6] . '</td><td>' . $row[7] . '</td>';
echo '<td>' . $row[8] . '</td><td>' . $row[9] . '</td></tr>';
}
?>
</table>
請注意,所有這些數字都可以用引號中的列名替換(例如'name'
)。 同樣,上面的代碼將為數據庫中的每個行發出5個表行。 那是你要做什么?
編輯:如果您試圖遍歷每一行並將其添加到基於該行列數的表中,那么我建議這樣的事情:
<table border=1>
<?php
while ( $row = mysql_fetch_array( $result ) )
{
echo '<tr>';
//Loop through cols
foreach($row as $value)
{
if($value)
{
echo '<td>' . $value . '</td>';
}
}
echo '</tr>'
}
?>
</table>
僅當值在數據庫中時,才將值放在表行中,因此,如果一行中有1個填充的列,則得到1個表列,但有4個列填充的行將有4個表列。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.