-3

我将图像的名称和类型存储在我的数据库中。现在我想从该数据库中选择最新的图像并将它们显示给用户。我尝试使用以下代码,但我得到相同的图像名称和类型,但我想获得不同的图像。

$new_image_count = mysql_query("SELECT COUNT(id) FROM newest");
$result = mysql_result($new_image_count, 0);

    $select_images = mysql_query("SELECT * FROM newest");

        $fetch = mysql_fetch_assoc($select_images);
        for($result; $result > 0; $result--){

        $name = $fetch['image_name'];
        $type = $fetch['image_type'];
        $name_dot_type = $name.".".$type;
        echo '<img src="main_images/'.$name_dot_type.'" width="300">';
        }

关于如何解决这个问题的任何想法?

4

2 回答 2

0

删除查询以计算行数(您不需要它)

并将代码的主要部分更改为类似

$select_images = mysql_query("SELECT * FROM newest");
while ($fetch = mysql_fetch_assoc($select_images)) {
    // echo data from $fetch
}

PS:你最近会收到关于使用 PDO 代替的评论mysql_

PPS:您会得到相同的结果,因为您只获取该行一次,然后在循环中输出相同的值

于 2012-06-21T23:29:21.097 回答
0

首先,你不应该再使用mysql_*()函数了,应该切换到 mysqli 或 PDO

其次,只需移动循环$fetch = mysql_fetch_assoc($select_images);内部:for

for($result; $result > 0; $result--){
    $fetch = mysql_fetch_assoc($select_images);
    $name = $fetch['image_name'];
    $type = $fetch['image_type'];
    $name_dot_type = $name.".".$type;
    echo '<img src="main_images/'.$name_dot_type.'" width="300">';
}
于 2012-06-21T23:30:29.107 回答