php - 无法显示来自 mysql 数据库的图像

标签 php mysql image

我在显示数据库中的图像时遇到问题,当我在没有标题的情况下显示图像时,我得到图像数据,但是当我给它 header('Content-type: image/jpeg'); 没有显示任何内容。

在我的数据库中,我将图像列作为长 Blob 。

$host='******';
$user='******';
$pass='******';
$db='******';
$tbl_name='******';

//connect to db
mysql_connect($host, $user, $pass);
mysql_select_db($db);

$id=addslashes($_REQUEST['id']);

$image=mysql_query("SELECT * FROM $tbl_name WHERE id='$id'");
$image=mysql_fetch_assoc($image);
$image=$image['image'];

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

echo "<img src='$image' />";

?>`

最佳答案

删除 img 标签。您只想输出原始数据:

echo $image;

请注意,addslashes() 不足以防止 SQL 注入(inject)。您必须使用mysql_real_escape_string()(或intval())。

关于php - 无法显示来自 mysql 数据库的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9735258/

相关文章:

php - 显示共享一个外键的多个表中的值

php - cURL 使用字符串发布多个值

PHP 接口(interface) : Specify ANY visibility

mysql - 如何使用最高值连接表?

python - SimpleITK 调整图像大小

javascript - 如何使用 filepond 插件、ajax 和 php,在服务器上未检测到文件名

mysql - 如何使用左连接从使用两种不同数据类型的空列中输出结果?

php - 动态 PDO 查询中的整数值

html - 加速图库页面

android - 从位图中获取 URI?