1

我无法在我的实时托管环境中显示来自 MySQL 的 blob 图像,它适用于开发。我有一个 getimage.php 文件,我将图像的 id 传递给,我没有在页面上写出任何文本。
这两种方法都适用于我的开发环境。
简单代码:

方法一:

header("Content-type: image/jpeg");
$data   = mysql_result($result, 0,'documentfile');
echo $data;

方法二:

header("Content-type: image/jpeg");
$data   = mysql_result($result, 0,'documentfile');
$bImage = imagecreatefromstring($data);
imagejpeg($bImage);
imagedestroy($bImage);

我没有收到 php 错误我收到以下错误:

图片http://www.mywebsite.com/getimage.php?id=15无法显示,因为它包含错误`

如果我在我的实时环境中硬编码一个图像路径,它可以正常工作:

header("Content-type: image/jpeg");
$data = file_get_contents("../images/sunflowers.jpg");
echo $data;

任何帮助,将不胜感激

4

2 回答 2

0

将标题行进一步向下移动,以便可以将 php 错误作为文本发送

$data = mysql_result($result, 0,'documentfile');
header("Content-type: image/jpeg");
echo $data;

这应该使您能够阅读错误,您也可以尝试保存图像并在文本编辑器中打开它,或者只使用浏览器view source

于 2012-07-11T15:54:56.017 回答
0

我发现这与从 Dev 到 Live 的数据库上传有关,可能是编码之类的。当我将图像文件重新上传到 Live DB 时,它们显示正确。

于 2012-07-12T20:50:14.030 回答