如何在HTML中显示blob图像?

时间:2014-03-31 11:27:06

标签: php html

我有一个存储在mysql中的图像作为mediumblob,现在我想在html页面中显示它,所以我这样做:

$c = base64_encode($resu[0]->image);
$image = '<img src="data:image/jpeg;base64,'.$c.'" />';
echo $image;

但是我只获得原始图像的一半,所以我在这里遗漏了一些东西吗?

3 个答案:

答案 0 :(得分:0)

只需在strlen变量上使用$resu[0]->image执行快速测试,然后检查数据库中的blob大小,并检查它们是否大小不一。

答案 1 :(得分:0)

只是一个想法,可能是你可以分离逻辑来显示图像。 我的意思是你可以创建一个像image.php这样接受id或文件名的文件 然后显示图像。然后,您可以简单地在HTML中引用图像 举例来说,做这样的事情:

image.php文件中的

类似于以下内容

$ imgId = isset(GET [ 'imgId'])GET [ 'imgId']:0;

$ sql =“SELECT * FROM theBlogs WHERE ID = $ imgId;”;

$ result = mysql_query($ sql)或die(mysql_error());
$ row = mysql_fetch_array($ result);

header(“Content-type:image / jpeg”); echo $ row ['imageContent'];

答案 2 :(得分:0)

在li标签中显示表示使用此
    <li data-thumb='<?php echo "data:image/jpeg;base64,".base64_encode($img1 ); ?>'> <div class="thumb-image"> <img <?php echo 'src="data:image/jpeg;base64,'.base64_encode( $img1 ).'"';?> data-imagezoom="true" class="img-responsive" alt=""> </div> </li>