2010-08-17 160 views
2

什麼是標準尺寸上傳圖片。當用戶正在上傳一個大圖片到我的網站上傳時間錯誤正在發生。我在上傳時也調整了圖片的大小。我想修改我的代碼,就好像大圖片將上傳,然後圖片上傳不應該發生。 那麼什麼是標準大小的圖像上傳到服務器上的任何網站?這樣我就可以修復我的代碼。 在此先感謝標準尺寸的上傳圖片(PHP)

回答

0

大多數時間PHP配置爲不接受更多的2MB文件。

檢查here for solution

對於存儲問題的嘗試:

ini_set("memory_limit","80M"); //or any amount of ram but do not go to high 

你thumbnailer的可能使用到多的內存,因爲高分辨率的image.So給予更多的內存的PHP的是一個快速劈讓它起作用。但足夠大的圖像仍然會崩潰。

+0

我看到424 kb的文件(4368 x 2192)文件無法調整到拇指大小(75x75),我得到了一個錯誤page.What大小(標準)我應該修復那裏? – 2010-08-17 21:22:25

+0

多數民衆贊成在不同的。您的應用程序需要更多內存,不是因爲文件大小,而是因爲分辨率。 – Iznogood 2010-08-17 21:23:26

+0

請記住,將圖像加載到真彩圖像對象時,每像素至少需要3個字節。所以你的4368x2192圖像需要28,723,968字節。如果您使用的是Alpha通道,那麼每個像素就有一個額外的字節,並且可以驅動多達38,298,624字節的內存。 – 2010-08-18 04:10:22

2

php.ini控制文件上傳與幾個配置指令。

file_uploads控制是否允許上傳文件。是的,1是默認值。

upload_tmp_dir是進行文件上傳時用於存儲文件的臨時目錄。必須由PHP運行的任何用戶寫入。如果未指定,PHP將使用系統的默認值。默認值是NULL

upload_max_filesize是您感興趣的內容。它是允許的最大上傳量。默認值是2M。如果你只提供一個整數,它被假定爲字節。或者你也可以使用一個快捷方式,這樣的改變:

upload_max_filesize = 10M 

max_file_uploads是可以同時上傳的文件的最大數量。缺省值爲20.

影響上傳文件的另一個設置是用post_max_size控制的POST數據的最大大小。

如果您不需要/想要更改php.ini文件,則可以使用string ini_set (string $varname , string $newvalue)在腳本執行期間設置這些值。

如果您成功更改了該值,則會返回舊值,如果更改未成功,則返回false。因此,要的upload_max_filesize更改爲10M,你可以這樣做:

if (ini_set('upload_max_filesize', '10M')) 
{ 
    // Do stuff that requires big files to be uploaded 
} 

作爲註腳,以改變這些內存值:

PHP允許位值,其中K(公斤)快捷鍵,M(兆)和G(千兆)。如果您使用其中任何一種,PHP將自動執行轉換。請小心不要超過32位有符號整數限制(如果您使用的是32位版本),否則會導致腳本失敗。