php 上傳檔案失敗$_FILES tmp_name 為空

黑太歲發表於2015-07-07

PHP後臺 做App客戶端升級時 ,通過表單提交的檔案 無法儲存

經過試用echo 列印,確定 是  echo $_FILES['app_file']['tmp_name'] ;為空

上傳圖片的功能都沒問題啊

再列印echo '<br/>file error='.$_FILES['app_file']['error'] ;

file error=1

原因

1; 超過了檔案大小php.ini中即系統設定的大小。


那修改php.ini

upload_max_filesize = 20M


其中post_max_size與 upload_max_filesize有啥區別

一個是上傳檔案最大值

一個是通過POST提交資料的最大值


/////////////////////////////

PHP程式語言中的常見的$_FILES系統函式用法有:

$_FILES['myFile']['name'] 顯示客戶端檔案的原名稱。

$_FILES['myFile']['type'] 檔案的 MIME 型別,例如"image/gif"。

$_FILES['myFile']['size'] 已上傳檔案的大小,單位為位元組。

$_FILES['myFile']['tmp_name'] 儲存的臨時檔名,一般是系統預設。

$_FILES['myFile']['error'] 該檔案上傳相關的錯誤程式碼。以下為不同程式碼代表的意思:

0; 檔案上傳成功。

1; 超過了檔案大小php.ini中即系統設定的大小。

2; 超過了檔案大小

MAX_FILE_SIZE 選項指定的值。

3; 檔案只有部分被上傳。

4; 沒有檔案被上傳。

5; 上傳檔案大小為0。

//////////////////////////

需要在PHP.ini裡設定以下幾項:
1. post_max_size =10M  
表單提交最大資料為10M.此項不是限制上傳單個檔案的大小,而是針對整個表單的提交資料進行限制的.
限制範圍包括表單提交的所有內容.例如:發表貼子時,貼子標題,內容,附件等...
2.file_uploads = On 
是否允許上傳檔案,如果為OFF您將不能上傳檔案.
3.upload_tmp_dir = "D:/APM/PHP/uploadtemp/" 
上傳檔案時系統使用的快取目錄.如果此目錄所在磁碟空間不足的話您將不能上傳檔案.
4.upload_max_filesize =2M  
最大上傳檔案大小,此項針對上傳檔案時單個檔案的大小.

相關文章