首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在php中以不可读格式显示图像

在php中以不可读格式显示图像
EN

Stack Overflow用户
提问于 2013-08-22 14:35:43
回答 2查看 280关注 0票数 0

我使用以下代码从数据库中显示图像此代码以无法读取的格式获取图像,在数据库中我创建了"blob“中的图像类型,请帮助我在用户输入图像名称时动态显示图像,它应该只显示该图像

我的db表表名存储区

代码语言:javascript
复制
id | name |image
---------------
1 |  xxxx| (image)

<?php
mysql_connect("localhost","root","")or die(mysql_error());
mysql_select_db("databaseimage") or die(mysql_error());

$query = "SELECT * FROM store where fname = 'ss' ";

$info = mysql_query($query) or die(mysql_error());

$num = mysql_num_rows($info);




$sql ="select image from store where fname = 'ss' ";

$result = mysql_query($sql) or die(mysql_error());

if($result){
    echo'
<table align="center" cellspacing="0" cellpadding="5" bgcolor="#ffffff" border=1   bordercolor="#2696b8">
            <tr>

</tr>';


while($row = mysql_fetch_array($result, MYSQL_ASSOC)){
                echo'<tr>


<td align="center" width="150" height="200"><img src="datadesign.php' . $row['image'] . '">


</tr>';
                    }
    echo'</table>';
}

else{
    echo'<h1> System Error </h1> table ';
    exit();
}
mysql_close();
?>
EN

回答 2

Stack Overflow用户

发布于 2013-08-22 14:42:57

试试这个:

代码语言:javascript
复制
header("Content-type: image/jpeg");
     echo mysql_result($result, 0);
票数 0
EN

Stack Overflow用户

发布于 2013-08-22 14:45:16

基本上,有两种可能的选择。使用或不使用数据URI方案(http://en.wikipedia.org/wiki/Data_URI_scheme)。我通常更喜欢使用2个没有数据uri的脚本。这些只是给你一个想法的例子,所以你可能需要编辑代码。

1.您需要2个脚本来创建带有image的表。

table.php

代码语言:javascript
复制
<table align="center" cellspacing="0" cellpadding="5" bgcolor="#ffffff" border=1   bordercolor="#2696b8">
<tr>
<td align="center" width="150" height="200"><img src="image.php?image_id=1">
</tr>
</table>

image.php

代码语言:javascript
复制
mysql_connect("localhost","root","")or die(mysql_error());
mysql_select_db("databaseimage") or die(mysql_error());
$sql ="select image from store where id= '".intval($_GET['image_id'])."' ";
$result = mysql_query($sql) or die(mysql_error());
header('Content-Type: image/png');
if($result){
  $row = mysql_fetch_row($result);
  echo $row['image'];
  mysql_close();
}
else
{
  echo readfile('/your/path/error/image.png');
}

2.您需要1个脚本来创建带有图像的表。

table.php

代码语言:javascript
复制
mysql_connect("localhost","root","")or die(mysql_error());
mysql_select_db("databaseimage") or die(mysql_error());

$query = "SELECT * FROM store where fname = 'ss' ";

$info = mysql_query($query) or die(mysql_error());

$num = mysql_num_rows($info);
if ($num > 0)
{
echo'
<table align="center" cellspacing="0" cellpadding="5" bgcolor="#ffffff" border=1   bordercolor="#2696b8">
            <tr>

</tr>';


while($row = mysql_fetch_array($info, MYSQL_ASSOC)){
                echo'<tr>


<td align="center" width="150" height="200"><img src="data:image/png;base64,'.base64_encode($row['image']). '">


</tr>';
                    }
    echo'</table>';
}
 mysql_close();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18373264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档