从blob字段php显示相同的图像

时间:2013-04-17 19:14:50

标签: php html css

<?php
while($query_row2=mysql_fetch_array($result))
    {
    $res=mysql_query("SELECT * FROM images WHERE er='".$query_row2['er']."' ORDER BY `sr` DESC") or die ("Error");
    $q=mysql_fetch_array($res);
    $_SESSION["id1"]=$q['iname'];
?>


     <img src="xyz.php" height="50" width="100"/>
<?php

    }
?>

xyz.php包含:

<?php
include("connection.php");
session_start();
$z= $_SESSION["id1"];
header ("Content-type:image");
echo $z;
?>

此代码显示为第一个$ query_row2 ['er']存储的相同图像...并且所有图像都显示相同..

1 个答案:

答案 0 :(得分:0)

您遇到的行为是正常的:首先,执行列出所有图像的页面,因此最后,$ _SESSION [“id1”]将包含最后一张图像的内容。

我不会使用会话,并将您的循环更改为:

while($query_row2=mysql_fetch_array($result)) {
    ?><img src="xyz.php?er=<?=urlencode($query_row2['er'])?>" height="50" width="100"/><?
}

和xyz.php进行查询以获取图像内容,如下所示:

<?php
include("connection.php");
$res=mysql_query("SELECT * FROM images WHERE er='".mysql_real_escape_string($_GET['er'])."'");
$q=mysql_fetch_array($res);
$z = $q['iname'];
header ("Content-type:image");
echo $z;
?>