【发布时间】:2015-04-02 00:38:46
【问题描述】:
我试图从数据库中提取一些数据,但我需要两个 while 循环来嵌套 (fetch_assoc)。问题是内部循环不循环它只是给我数组的第一个元素,数组长度时间。
<?php
$al_num = $_GET['album'];
$photo_query = "SELECT photo FROM album WHERE album_number={$al_num}";
$thumbnail_query = "SELECT thumbnail FROM album WHERE album_number={$al_num}";
$photo_result = mysqli_query($connection, $photo_query);
$thumbnail_result = mysqli_query($connection, $thumbnail_query);
?>
<?php while($photo = mysqli_fetch_assoc($photo_result)): ?>
<?php while($thumb = mysqli_fetch_assoc($thumbnail_result)): ?>
<li>
<a href="images/<?php echo $photo['photo'] ?>" class="highslide" onclick="return hs.expand(this, config1 )">
<img src="images/<?php echo $thumb['thumbnail'] ?>" alt=""/>
</a>
</li>
<?php endwhile; ?>
<?php endwhile; ?>
【问题讨论】:
-
您确定
thumbnail表中有多个记录吗?只是不要这样做。您的代码中存在严重的安全问题。您可以使用连接处理数据库层上的图像和缩略图,这是毫无意义的解决方案。 -
我认为数据架构存在错误。您如何为某个相册保存许多缩略图和许多照片?您不需要一组照片和每个相册的缩略图吗?
-
我的数据库表中有相同数量的缩略图和照片,我有专辑编号 (al_num)、照片名称和缩略图名称。
-
这是我列出特定专辑图像的页面,它只是表格中的一个整数。我在页面中有包含专辑名称的数组。
标签: php mysql while-loop nested