2014-09-28 92 views
0

您是否要檢查我的代碼,我已授予777權限。在Ubuntu上使用PHP上傳文件

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 />"; 
$path = 'var/www/html/' . $_SESSION['URL'] .'/' . $_FILES["file"]["name"]; 
if (file_exists('var/www/html/' . $_SESSION['URL'] .'/'. $_FILES["file"]["name"])) 
    { 
    echo $_FILES["file"]["name"] . " already exists. "; 
    } 
else 
    { 
move_uploaded_file($_FILES["file"]["tmp_name"], $path); 

    echo "Stored in: " . 'var/www/html/' . $_SESSION['URL'] .'/' . $_FILES["file"]["name"]; 
    } 
} 

輸出是:

Upload: lamp.odt 
Type: application/vnd.oasis.opendocument.text 
Size: 57.5595703125 Kb 
Temp file: /tmp/phpuch5Kp 
path is var/www/html/man/lamp.odtStored in: var/www/html/man/lamp.odt 

但文件沒有得到上傳。這不是權限問題,因爲我可以在該文件夾中移動文件。

+0

可以看到臨時文件,但它包含任何數據?你說這個文件沒有上傳......你的意思是沒有發送數據,或者你不能通過'$ _FILES'獲得它的數據? – Brad 2014-09-28 06:36:49

+0

哪裏可以找到tmp文件?我的輸出顯示「Temp file:/ tmp/phpuch5Kp」但文件夾TMP中沒有這樣的文件 文件沒有上移意味着,當我檢查所需的文件夾時,它是空的,沒有文件被移動到它。 – Ritzor 2014-09-28 07:07:47

+0

固定'/'失蹤,感謝您的幫助球員:-) – Ritzor 2014-09-28 07:17:15

回答

1

你能錯過「/」

$path = '/var/www/html/' . $_SESSION['URL'] .'/' . $_FILES["file"]["name"]; 
+0

感謝您的幫助:-) – Ritzor 2015-10-11 07:31:14