我将图像存储在我的mysql数据库中作为blob。我可以使用变量中的查询加载这些文件,但是如何将此变量的内容作为图像发送回浏览器?
html文件是否包含类似<img src="smtg.png">
的内容?或者如何提出请求?
答案 0 :(得分:7)
您需要一个回显图像数据的脚本。使用header()设置适当的内容类型,然后回显数据。例如:
header("Content-type: image/png");
...
echo $db_results['imgdata'];
然后,从HTML页面调用您的脚本,如下所示:
<img src="yourimagescript.php" />
理想情况下,您应该将文件类型存储在图像数据旁边的列中,这样您就可以动态设置正确的内容类型。
答案 1 :(得分:2)
<强> PHP 强>
<?php
mysql_connect("localhost","test","test");
mysql_select_db("test");
$imageid = (int)$_GET['imgid'];
$rs = mysql_query("select * from images where imageid=$imageid");
$row = mysql_fetch_assoc($rs);
$imagebytes = $row['imgdata'];
header("Content-type: image/jpeg");
print $imagebytes;
?>
<强> HTML 强>
<img src="location_to_your_php_script.php?imgid=21" alt="xxx" />