我正在尝试创建一个PHP照片库(是的,我尝试过其他解决方案,没有使用我想要的设置)并且我试图让这个while
循环停止三次,因为我想在每个表格行中显示三个缩略图。这是我目前的代码:
<table>
<tr>
<?php while($row2 = mysql_fetch_assoc($result)) { echo "
<td><a href='URL/".$row2['file']."'><img src='URL/".$row2['file']."' width='200' height='106' /></a></td>
"; } ?>
</tr>
</table>
我不记得有关停止PHP循环的任何知识,所以请帮忙!非常感谢。
答案 0 :(得分:4)
所以你真正想要的是每行3张图片。我认为这会奏效:
<table>
<?php
$i = 0;
while($row2 = mysql_fetch_assoc($result)) {
if($i%3==0)
echo "<tr>";
echo "<td><a href='URL/".$row2['file']."'><img src='URL/".$row2['file']."' width='200' height='106' /></a></td>";
if($i%3==2)
echo "</tr>";
$i++;
}
if($i%3!=0)
echo "</tr>";
?>
</table>
答案 1 :(得分:1)
<table>
<tr>
<?php
$i=1;
while($row2 = mysql_fetch_assoc($result)) { echo "
<td><a href='URL/".$row2['file']."'><img src='URL/".$row2['file']."' width='200' height='106' /></a></td>
";
if($i>=3) break;
$i++;
} ?>
</tr>
</table>
答案 2 :(得分:0)
尝试在while中添加AND并与计数器进行比较 while($ row2 = mysql_fetch_assoc($ result)&amp;&amp; $ i&lt; 3)
在循环
之前将$ i设置为0答案 3 :(得分:0)
为什么不限制原始MySQL查询中返回的结果?您可以像这样添加查询限制:
limit 3
那样$ result只会有三行,所以不需要额外的PHP和内存中数据库中的数据少
答案 4 :(得分:-1)
您可以添加一个计数器,例如:
$nr = 1;
while($row2 = mysql_fetch_assoc($result)) {
if ($nr < 4) {
do your thing;
}
$nr++;
}