Re: [請益] 從mysql抓資料後多欄顯示

作者: ying5320 (yuehpih)   2014-05-30 09:44:28
※ 引述《mick90207 (阿公)》之銘言:
: 我想做個類似商品清單的顯示頁面
: 可以每列顯示三個商品
: 想請問前輩們該如何撰寫呢?
: 有爬到文說可以加個計數器 再利用mod 看看是否要在該迴圈中加<tr>
: 只是這樣寫下來
: if 判斷是否加tr
: echo "<tr>";
: do loop
: <td width="280"><? echo $row[goods_name]; ?></td>
: i++
: while...
: <tr>
: do loop
: <td width="280"><? echo $row[price]; ?></td>
: i++
: while...
: 這樣的話我一次只能把一欄的資料抓出來
: 我再寫第二列價格的時候
: $row[]裡面就會接續下去
: mysql有辦法指定特別要某欄某列的值嗎?
: 我現在的code 先把每欄直接*3看看前端介面用....
: <?php do{?>
: <tr>
: <td width="280"><? echo $row[goods_name]; ?></td>
: <td width="280"><? echo $row[goods_name]; ?></td>
: <td width="280"><? echo $row[goods_name]; ?></td>
: </tr>
: <tr>
: <td><? echo $row[price]; ?></td>
: <td><? echo $row[price]; ?></td>
: <td><? echo $row[price]; ?></td>
: </tr>
: <? }while($row=mysqli_fetch_array($result)); ?>
我是都使用mod去取餘數達到每列固定要的資料
<table>
<tr>
<td>
<?php
$sql = "SELECT `id`, `goods_name`, `price` FROM table";
$query = mysql_query($sql);
$num = mysql_num_rows($query);
$i = 0;
while($row = mysql_fetch_array($query))
$i++;
if($i % 3 == 0){
?>
<table>
<tr>
<td><?php echo $row['goods_name'];?></td>
</tr>
<tr>
<td><?php echo $row['price'];?></td>
</tr>
</table>
<?php
if($i % 3 == 0){
echo '</td><td>';
} else {
echo '</td></tr><tr>';
}
}
?>
</tr>
</table>
作者: MOONRAKER (㊣牛鶴鰻毛人)   2014-05-30 10:17:00
為什麼 if($i % 3 == 0){ 要寫兩次
作者: fri13 (思考跳tone記性差)   2014-05-30 11:48:00
有頭也要有尾啊是我看錯 orz
作者: MOONRAKER (㊣牛鶴鰻毛人)   2014-05-30 12:18:00
這樣反而是有頭沒尾了 |D
作者: rocairforce (拾貳)   2014-05-30 12:37:00
array_chunk

Links booklink

Contact Us: admin [ a t ] ucptt.com