我正在尝试显示图像以及数据库中的其他信息。
PHP
<?php
mysql_connect("localhost","111","222") or die("Could not connect to localhost");
mysql_select_db("movies") or die( "Could not connect to database");
$result = mysql_query("SELECT * FROM allmovies");
if ($result == false ) die(mysql_error());
while($row = mysql_fetch_array($result))
{
echo "<img src=' . $row['image'] . '>";
?>
像:
标题:Blah
价格:Blah
图片:<img src=rarara">
所有来自MySQL的一页?
答案 0 :(得分:2)
如果您坚持这样做,您应该只使用正确的标题一次返回一个图像,基于图像类型使用类似于以下内容:
$imagedata = data_from_mysql();
header('Content-Length: ' . sizeof($imagedata) );
header('Content-Type: image/png');
echo $imagedata;
exit;
如果您确实想让您的网页来源变得臃肿,缓慢,无法管理且几乎无法缓存:
while( $imagedata = data_from_mysql() ) {
echo "<img src='data:image/png;base64," . base64_encode($imagedata) . "'>";
}
我不能强调这些 可怕的想法 你 不应该使用 ,但如果你不能听你说你至少可以用正确的方式做坏事。
答案 1 :(得分:1)
$im = imagecreatefromstring($row['image']);
if ($im !== false) {
ob_start();
imagejpeg($im);
$data = ob_get_contents();
ob_end_clean();
echo '<img src="data:image/jpg;base64,' . base64_encode($data) . '" />';
}
仅仅是我的观点,但是将图像保存到文件服务器然后存储对路径的引用而不是整个图像作为blob可能会稍微有点理智吗?