0

我正在尝试创建一个脚本,该脚本从数据库中提取图像并将其显示给用户,由<img src="viewImage/someImageName">

但是我遇到的问题是当显示图像时,所有的 Nulls (0x00) 都被 0x20 替换,我不知道为什么。数据库中的数据显示它是空值,但在某个地方它被更改为 0x20s。

有人有什么主意吗?有什么我想念的吗?

这是我正在使用的代码:

$data = $this->Image->read(NULL, $userId);
header("Content-Type: image/jpeg");
echo($data['image']);
die;

我认为这与代码没有任何关系,因为如您所见,没有错误的地方。我可以转储二进制内容,它还没有被篡改。

堆栈或 cakephp 有什么想法吗?

更新:我注意到流的开头有一个空格,我正在尝试追踪它,这可能是问题吗?

4

2 回答 2

0

我在某处的文件中有一个杂散空间,追踪起来很有趣:) 我猜这会切换堆栈中某些东西的模式并破坏文件

于 2009-09-16T20:20:38.873 回答
0

是的,一路上有些东西吓坏了(因为 OMG 空值,如果有人认为它们是字符串终止符怎么办)并用空格替换它们。我怀疑 CakePHP,但不太确定要说 j'accuse。尝试:

header('Transfer-Encoding-Type: base64');

看看这是否能说服正在做的任何事情都不要管你的数据。

于 2009-09-16T19:27:06.507 回答