无法使用php显示MySQL数据库中的图像

时间:2013-07-20 09:20:10

标签: php mysql database mysqli image-uploading

我有一个Products_Images表,它以BLOB格式存储图像。我想在“查看所有产品”页面中显示所有图像和产品详细信息。为了完成这个任务,我创建了以下程序,但它没有给我所需的输出。请检查一下。

感谢。

<?php

include 'connect.php';

$query=         "select distinct product_id, image from product_images";

$query_run=     mysql_query($query);

while ($query_fetch=    mysql_fetch_assoc($query_run))
 {




     echo '</br>';
     echo $query_fetch['image'];


 }

header("Content-type: image/jpeg");





?>

显示图片

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<br />
<img src="all_images.php" alt="Image" width="50" height="50" />
<body>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

当您使用header()功能时,您无法在标题调用之前打印任何内容,因为这会指示Web服务器准备内容标题

<?php

include 'connect.php';

$query=         "select distinct product_id, image from product_images";

$query_run=     mysql_query($query);

header("Content-type: image/jpeg");
while ($query_fetch=    mysql_fetch_assoc($query_run))
 {




    // echo '</br>';
     echo $query_fetch['image'];


 }

?>
  

注意:请避免使用mysql *它们在php更新时被折旧   版本保持使用PDO或至少mysqli

答案 1 :(得分:0)

为什么要将它存储在数据库中,将图像存储在一个文件夹中并在数据库中输入名称,同时在src中调用图像只需写入文件夹的路径和php代码,在那里提到名称。

<img src="yourfolder/<?php echo your database table field name where images names are stored?>" />