2011-08-18 115 views
0

爲什麼我不能通過上傳表單獲取.zip作爲類型和大小,但只能獲取其名稱?php上傳:zip文件

Array 
(
    [file] => Array 
     (
      [name] => Array 
       (
        [0] => attachments_2011_05_20.zip 
       ) 

      [type] => Array 
       (
        [0] => 
       ) 

      [tmp_name] => Array 
       (
        [0] => 
       ) 

      [error] => Array 
       (
        [0] => 1 
       ) 

      [size] => Array 
       (
        [0] => 0 
       ) 

     ) 

) 

我應該做些額外的事情來獲得zip大小和類型?

+0

以下答案的附加內容:'$ _FILES'中提供的數據也取決於客戶端發送的內容。 [最好檢查服務器上的文件類型,使用PHP](http://stackoverflow.com/questions/457797/best-way-to-recognize-a-filetype-in​​-php)。 – feeela

回答

2

您的error code1,意思是「文件太大」 - 您的upload_max_filesize設置太低,所以上傳正在中止。

+0

謝謝。我增加了'upload_max_filesize'的大小,現在它工作正常。 – laukok

0

錯誤代碼列表 UPLOAD_ERR_OK

值:0;沒有錯誤,文件上傳成功。 UPLOAD_ERR_INI_SIZE

Value:1;上傳的文件超出了php.ini中的upload_max_filesize指令。 UPLOAD_ERR_FORM_SIZE

Value:2;上傳的文件超出了HTML表單中指定的MAX_FILE_SIZE指令。 UPLOAD_ERR_PARTIAL

Value:3;上傳的文件僅部分上傳。 UPLOAD_ERR_NO_FILE

Value:4;沒有文件上傳。 UPLOAD_ERR_NO_TMP_DIR

Value:6;缺少臨時文件夾。在PHP 4.3.10和PHP 5.0.3中引入。 UPLOAD_ERR_CANT_WRITE

Value:7;無法將文件寫入磁盤。在PHP 5.1.0中引入。 UPLOAD_ERR_EXTENSION

Value:8; PHP擴展停止了文件上傳。 PHP不提供確定哪個擴展導致文件上傳停止的方法;使用phpinfo()檢查加載的擴展列表可能會有所幫助。在PHP 5.2.0中引入。 http://www.php.net/manual/en/features.file-upload.errors.php

+0

這是'upload_max_filesize'!謝謝! – laukok