Try this ...
<?php
$totalCount = ceil(mysql_num_rows($result)/3)*3;
for($k = 0; $k < $totalCount; $k ++) {
if($k%3 == 0) { echo '<tr>'; }
if($row = mysql_fetch_array($result)) {
echo '<td style="width:280px;">'.$row[goods_name].'</td>';
}
else {
echo '<td style="width:280px;"></td>';
}
if($k%3 == 2) { echo '</tr>'; }
}
?>
至于要特别指定某栏、某列的值,可以使用 mysql_result ;
此外我会建议将 mysql_fetch_array 换成 mysql_fetch_asoc ,
如果阵列不需要数字键的话。
还有 .... 其实 Table 切版很麻烦,
可以考虑改用 div 配合 float 去排出列表,
套 php Code 会比较神清气爽 XD
※ 引述《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)); ?>