2010-10-01 71 views
0

文件我上傳要麼沒有得到寫入到臨時文件夾,或者它沒有得到由PHP正確處理....

Enctype - Check 
Name, Method - Check 
Form (syntax) - Check 

(從我這裏把它的數據是由形式傳遞給PHP) 的PHP代碼 -

<?php 
if ((($_FILES["file"]["type"] == "image/gif") 
|| ($_FILES["file"]["type"] == "image/jpeg") 
|| ($_FILES["file"]["type"] == "image/pjpeg")) 
&& ($_FILES["file"]["size"] < 20000)) 
    { 
    if ($_FILES["file"]["error"] > 0) 
    { 
    echo "Return Code: " . $_FILES["file"]["error"] . "<br />"; 
    } 
    else 
    { 
     echo "Upload: " . $_FILES["file"]["name"] . "<br />"; 
    echo "Type: " . $_FILES["file"]["type"] . "<br />"; 
    echo "Size: " . ($_FILES["file"]["size"]/1024) . " Kb<br />"; 
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />"; 
    if (file_exists("upload/" . $_FILES["file"]["name"])) 
     { 
     echo $_FILES["file"]["name"] . " already exists. "; 
     } 
    else 
     { 
     move_uploaded_file($_FILES["file"]["tmp_name"], 
     "upload/" . $_FILES["file"]["name"]); 
     echo "Stored in: " . "upload/" . $_FILES["file"]["name"]; 
     } 
    } 
    } 
else 
    { 
    echo "Invalid file"; 
    } 
?> 

PHP -

Filesize - Check 
Php.ini file - Check 
File Permissions - Check. 

輸出 - 無效文件

而且我也沒有得到任何錯誤。

還有一件事,如果有幫助 -

當我print_r($_FILES)我得到這個下面的輸出 -

Array ([logo] => Array ([name] => pixel.gif [type] => image/gif [tmp_name] => E:\sAi\Web Design EC\upload\php34.tmp [error] => 0 [size] => 4271)) 

但當我只是做一個回聲echo $_FILES["file"]["name"]它沒有給輸出。

回答

1

那麼它似乎在你的表單文件屬性的名稱爲logo,你是在PHP

即使用file:您正在使用的$_FILES['file']在那裏,你應該使用$_FILES['logo']

或者您可以在您的html表單中將文件元素「logo」的名稱更改爲「file」。

相關問題