为什么我的图片不显示? [英] Why isn't my image showing up?

查看:34
本文介绍了为什么我的图片不显示?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

-------编辑-------
大家好,看到你为我解决了这个问题,我认为再次解决同样的问题但在不同的页面上是个好主意.我无法显示图像.

-------EDIT-------
hi guys, seeing that you solved this problem for me, i thought it would be a good idea to solve the same problem again but on a different page. i cannot get the image to show up.

    <?php
$id = $_GET['product_id'];
$query = mysql_query("SELECT * FROM products WHERE serial = '$id'")
or die(mysql_error());  

while($info = mysql_fetch_array($query)) {
echo "";

$name = $info['name'];
$description = $info['description'];
$price = $info['price'];
$picture = $info['picture'];

}
?>

<form action="editsuccess.php?product_id=<?php echo $id; ?>" method="post">

Product ID:<br/>
<input type="text" value="<?php echo $id;?>" name="product_id" disabled/>

<br/>

Name:<br/>
<input type="text" value="<?php echo $name;?>" name="name"/>

<br/>

Description:<br/>
<input type="text" value="<?php echo $description;?>" name="description"/>

<br/>

Price:<br/>
<input type="text" value="<?php echo $price;?>" name="price"/>

<br/>

Picture:<br/>
<? echo'<img src="../getImage.php?id=' . $info['serial'] .'"/>'?> 

</br>

<input type="submit" value="Update Product"/>

</form>

这是一个页面,管理员可以在此页面中从表格中的一行编辑产品.图像由于某种原因没有显示.

This is a page where an admin can edit a product from a row in a table. The image is not showing up for some reason.

感谢您的任何建议.

------编辑到此结束------

------EDIT ENDS HERE--------

即使按照正确的方法将图像上传到数据库后,我仍然无法显示我的 PHP 图像.以下代码用于显示图像:

I still cannot get my PHP image to show up even after following the right method in uploading an image to the database. the following code is for displaying the image:

<form name="form1">
    <input type="hidden" name="productid" />
    <input type="hidden" name="command" />
</form>

    <table border="0" cellpadding="2px" width="600px">
        <?
            $result=mysql_query("select * from products");
            while($row=mysql_fetch_array($result)){

        ?>
        <tr>
            <td><?php '<img src="getImage.php?id=' . $row['serial'] .'"/>'
?>

            </td>
            <td>    <b><a href="products.php?product_id=<?=$row['serial']?>"><?=$row['name']?></a></b><br />
                    <?=$row['description']?><br />
                    Price:<big style="color:green">
                        £<?=$row['price']?></big><br /><br />
                    <input type="button" value="Add to Cart" onclick="addtocart(<?=$row['serial']?>)" />
            </td>
        </tr>
        <tr><td colspan="2"><hr size="1" /></td>
        <? } ?>
    </table>

getImage.php 看起来像这样:

...
$link = mysql_connect($host, $user, $passwd);
mysql_select_db($dbName);
$query = 'SELECT picture FROM products WHERE serial="' . $_GET['id'] . '"';
$result = mysql_query($query,$link);
$row = mysql_fetch_assoc($result);
echo $row['picture'];
?>

网页上仅显示名称、说明和价格.我的 MySQL 表如下所示:

only the name, description and price is showing up on the webpage. my MySQL table looks like this:

  • 串行
  • 姓名
  • 说明
  • 价格
  • 图片(斑点)

推荐答案

在回显图像数据之前,您没有设置正确的 Content-type 标头.

You are not setting the correct Content-type header before echoing out the image data.

您还必须转义 $_GET['id'] 参数.

You MUST also escape the $_GET['id'] parameter.

// Escape $id
$id = mysql_real_escape_string($_GET['id']);   

$link = mysql_connect($host, $user, $passwd);
mysql_select_db($dbName);

// Use the escaped $id
$query = "SELECT picture FROM products WHERE serial='$id'";
$result = mysql_query($query,$link);

if ($result) {
  $row = mysql_fetch_assoc($result);

  // Set the Content-type
  // This assumes image/jpeg. If you have different image types,
  // you'll need logic to supply the correct MIME type
  // image/jpeg image/png image/gif, etc
  header("Content-type: image/jpeg");
  echo $row['picture'];
}
?>

在您的主脚本中,您似乎只是缺少一个 echo

In your main script, it looks like you are merely missing an echo

        <td><?php '<img src="getImage.php?id=' . $row['serial'] .'"/>'
        // Should be
        <td><?php echo '<img src="getImage.php?id=' . $row['serial'] .'"/>'
        // ------^^^^^^

这篇关于为什么我的图片不显示?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆