无法从MySQL显示图像

时间:2015-05-31 22:18:17

标签: php mysql

我无法显示来自MySQL的图像。我检查过路径等,但现场仍然有破碎的图像。以下是我的代码。请指导我。

<div id="right_content">
    <div id="headline">
    <div id="headline_content"> <b>Welcome Guest!</b> <b style="color:#F56013">Shopping Cart</b> <span>-Items: -Price: </span> </div>
</div>
<div id="products_box">
    <?php
        $get_products ="SELECT * FROM products ORDER BY rand() LIMIT 0,6";

        $run_products = mysqli_query($con,$get_products);

        while($row_products=mysqli_fetch_array($run_products)){
            $prod_id = $row_products['product_ID'];
            $prod_title = $row_products['product_title'];
            $prod_cat = $row_products['category_ID'];
            $prod_brand = $row_products['brand_ID'];
            $prod_price = $row_products['product_price'];
            $prod_desc = $row_products['product_desc'];
            $prod_img =$row_products['product_img1'];



            echo "
            <div id='single_product'>
            <h3>$prod_title</h3>
            <img src='admin_area/product_images/$prod_img' width='180' height='180' />
            </div>
            ";
        }
        ?>
</div>

2 个答案:

答案 0 :(得分:0)

根据评论,问题解决了。图像没有移动到目录中,我没有检查。当我手动将它们复制到指定目录时,问题就消失了。

答案 1 :(得分:0)

当你写html时请注意你应该总是使用双引号而不是单引号来标记属性。例如,

src='admin_area/product_images/$prod_img'

应该是

src="admin_area/product_images/$prod_img"

等等。由于您使用双引号进行回声,因此应该使用双引号来转义。 所以你的回声应该是这样的:

echo "
    <div id=\"single_product\">
    <h3>$prod_title</h3>
    <img src=\"admin_area/product_images/$prod_img\" width=\"180\" height=\"180\" />
    </div>
";

恕我直言,最好编写简单的html并仅使用php来回显变量,以避免生成的代码出现这种问题。所以我写道:

?>
        <div id="single_product">
        <h3><?php echo $prod_title; ?></h3>
        <img src="admin_area/product_images/<?php echo $prod_img; ?>" width=\"180\" height=\"180\" />
        </div>

<?php } ?>

如果你的代码不能正常工作,这将为你节省很多麻烦