2016-02-05 89 views
0

這裏的是我使用文件上傳不工作的遠程服務器

<form action="index.php" method="post" enctype="multipart/form-data"> 
<input type="file" name="file" id="file"><br><br> 
<input type="submit" value="submit" name="submit"> 
</form> 

PHP代碼代碼:

<?php 
$name = $_FILES['file']['name']; 
$tmp_name = $_FILES['file']['tmp_name']; 
$location = "/var/www/tmp/"; 
if(move_uploaded_file($tmp_name, $location.$name)){ 
    echo 'File uploaded successfully'; 
} else { 
    echo 'You should select a file to upload !!'; 
    } 
    ?> 

我檢查了文件夾的權限,以及檢查PHP .ini文件,但仍然總是我越來越'你應該選擇一個文件上傳'

任何人都可以請幫我在這個問題上?

非常感謝!

+0

你是否檢查過php.ini中的最大文件大小? –

+0

感謝您的回覆!是的,我確實已將最大文件大小從2M更改爲128M。 – Kabhir

+0

你的'$ location'代表「到位置」或「從位置」? –

回答

1

給你的文件的完整路徑這裏

$location = "var/www/tmp/"; 

我認爲它會工作。如果它確定,然後將您的服務器名稱存儲在一個變量中,並通過它。

+0

感謝您的回覆!我嘗試了你的建議,但我仍然處於虛假狀態。 – Kabhir

+0

是的,先生,我試着去除'/',結果仍然是假的。其實我也嘗試在Mac(OSX),但在那裏我得到同樣的結果。 – Kabhir

+0

我在Windows操作系統中執行此操作。它的未來很好。 – AAT

0

您現在的位置應該是這樣的:

// document root will give you the server root then you can add any directory after that (in your case its tmp I guess) 
$location = $_SERVER['DOCUMENT_ROOT'] . '/your_preferred_dir/' 

注:當你提到你的首選位置,你將不得不作出 確保此位置應該存在,否則會引起錯誤。

而不是硬編碼爲您的,因爲它可以從服務器更改爲服務器。

希望這會有所幫助...

+0

你好sagar,我試過用上面的命令:$ location = $ _SERVER ['DOCUMENT_ROOT']。 '/ var/www/html/tmp /',但是它不會輸出真正的錯誤。 – Kabhir

+0

你可以把你在錯誤日誌中得到什麼錯誤嗎? –

相關問題