我有一个web应用程序,我通过'新'文件流功能从sql 2008数据库中读取图像。 这里的事情是,当你右键单击并选择保存图像时,IE会给出错误800700de,而使用Firefox则可以正常工作。
img src被设置为一个php文档,它需要几个参数来知道在数据库中查找的位置然后打印二进制数据。请注意,在两个浏览器中显示图片都可以正常工作,这不是问题。这个问题就是我上面提到的。
知道为什么会这样吗?对此有任何解决方案或解决方法吗?
答案 0 :(得分:2)
你在构建标题吗?如果是这样可能是它。你发送了什么标题?
可能合适的标头:http://www.electrictoolbox.com/image-headers-php/ GIF:
header('Content-Type: image/gif');
JPEG:
header('Content-Type: image/jpeg');
PNG:
header('Content-Type: image/png');
答案 1 :(得分:0)
听起来IE似乎是猿,因为它不太相信你的文件是图像。
如果您在设置Content-Type标题后仍然遇到问题,正如其他人所解释的那样,您可以通过使用.png或.jpg扩展程序进一步欺骗浏览器认为您的脚本是图像,然后强制该文件以PHP的形式执行。
例如,在.htaccess中将这个伪装成一个PHP脚本为“image.png”
<Files image.png>
ForceType application/x-httpd-php
</Files>