因错误导致无法显示图像的错误

时间:2012-08-03 02:33:04

标签: php mysql

我收到一条错误消息,指出由于错误导致我的图片无法显示。我查看了以前的问题解决方案,但没有一个成功。我确定没有空行,我有html和php单独,我在标题之前有正确的信息。任何帮助都会很棒,因为我觉得我错过了一些小事。 代码如下。

HTML:

            <?php
        $images = "SELECT product_images.img_name, product_images.img_tag, product_images.img_family, product_images.img_id FROM product_images
INNER JOIN product_list
ON product_images.img_tag = product_list.product_tag && product_images.img_family = product_list.name_family";
    $img_list = mysql_query($images);
    while($rows = mysql_fetch_array($img_list))  {
        $img_name = $rows['img_name'];
        $img_tag = $rows['img_tag'];
        $img_family = $rows['img_family'];
        $img_id = $rows['img_id'];
        //echo $img_name;
?>
                <div>
                  <img src="view.php?imgid=<?php echo $img_id; ?>" />
                </div>  
<?php 
    }
?>

PHP:

<?php
require_once('april25_connect.php');
$dir = "product_images/";
$img = $_GET['imgid'];
$query = "SELECT * FROM product_images WHERE img_id = '$img'";
//echo $query,'<br>';
$newid = mysql_query($query);
if (!$newid) {
    echo "Query '$newid' failed <br />\n";
    echo "Error: ".mysql_error()." <br />\n";
    exit;
}else{
    while($returned_id = mysql_fetch_array($newid)) {
    $name = $returned_id['img_name'];
    $tag =  $returned_id['img_tag'];
    $family = $returned_id['img_family'];
    header ("Content-type: image/jpeg; image/gif; image/png");
    $fullpath = $dir.$name;
    echo $fullpath;
    }
}
?>

1 个答案:

答案 0 :(得分:1)

我认为你的方法是错的。你不应该在IMG html标签上回显$ fullpath而不是$ img_id吗?

<img src="view.php?imgid=<?php echo $fullpath; ?>" />

也许我误解了它,但通过部分看到剧本的内容很难说。

<击> P.S。我没有看到你的脚本返回$ img_id var以供使用。

我检查了你的product_images /目录,它是一个级别,它成功了     $ dir =“../ product_images /”;