2010-08-07 77 views
0

我正在使用Windows XP和FireFox 3.6.8上的WampServer版本2.0。为什么通过PHP获取图像不起作用?

我试图获得通过PHP脚本这样的形象内容:

HTML:

<img src='temp_get_file.php' alt='picture not found' /> 

PHP:(temp_get_file.php)

<?php 
header('Content-Type: image/png'); 
$img = imagecreatefromjpeg("1.png"); 
imagejpeg($img); 
imagedestroy($img); 
?> 

的HTML,PHP,和1.png文件位于WampServer的www目录中。

不幸的是,我得到这个错误(是HttpFox插件在Firefox):

Error loading content (NS_ERROR_DOCUMENT_NOT_CACHED)

,我看到 “图片未找到”。

如果我把图像直接在HTML这样的:

<img src='1.png' alt='picture not found' /> 

一切工作正常。

我的PHP有什么问题?

+0

尝试删除imagedestroy($ img)。 – Alexander 2010-08-07 04:24:50

+0

没有帮助。同样的错误... – 2010-08-07 04:26:34

回答

5

这可能只是你的榜样的问题,但是这不会工作:

imagecreatefromjpeg("1.png") 
       ^ ^
       JPEG != PNG 
+0

我很.......非常感谢:) – 2010-08-07 04:28:58

1

不与你的PHP居然但你的PHP技能:)
一些建议,以改善

  1. 你必须调试你的应用程序,而不是询问社区。
    要做到这一点,你必须
    一)直接请求你的图像文件,通过键入temp_get_file.php到浏览器的地址栏,让你看到剧本
    B的输出)把Content-Type头输出为低的代码,可能让PHP发送text/html的一些错误
    C)的情况下,对

    显示错误信息,而不是所有这一切之上,你可以打开日志记录错误和捕获错误在错误日志。
    这两种方法都会让你得到PHP错误信息 - 这是你真正需要的东西,而不是无用的firefox抱怨。
    这个错误信息非常清晰 - 错误的文件格式。

  2. 如果它是您的脚本所做的唯一事情,那么您并不需要所有这些GD函数。那没用。如果你需要输出一些文件到浏览器,只需要做。 readfile("1.png")已足够

相关问题