2010-08-07 36 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")已足夠

相關問題