2014-01-18 59 views
0

我一直在這個文件上傳php的工作了一段時間,但我無法得到它的工作。當我點擊上傳時,'if'語句變爲false。PhP文件上傳不起作用,直到上傳

如果有人能指出我哪裏出錯了,那會很棒。

<?php 
    $name = $_FILES["file"]["name"]; 


    $tmp_name = $_FILES["file"]["tmp_name"]; 

    if(isset($name)) { 
     if(!empty($name)) { 

      $location = "uploads/"; 
      if(move_uploaded_file($tmp_name, $location . $name)) { 
       echo "Uploaded"; 
      } else { 
       echo $location . $name; 
       echo "<br>"; 
       echo $tmp_name; 
      } 

     } else { 
      echo "Please choose a file!"; 
     } 
    } 
?> 

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

是isset($ N ame)或isset($文件).. ?? –

+0

@FranciscoCarvalho實際上'空($ _ FILES)',因爲'$ _FILES'總是設置 – Yang

+0

嘗試'var_dump($ _ FILES)'看看是否有任何上傳 –

回答

3

你的$的位置可能是錯的,試圖傳遞一個絕對路徑(在你的例子中,路徑是相對於當前的工作目錄,它可能是不可寫)

+0

謝謝,工作完美。忘記將上傳文件夾設爲可寫。 – user1476856

0

這工作,

<html> 
<head> 
<title>File Upload Form</title> 
</head> 
<body> 
This form allows you to upload a file to the server.<br> 

<form action="getfile.php" method="post"><br> 
Type (or select) Filename: <input type="file" name="uploadFile"> 
<input type="submit" value="Upload File"> 
</form> 

</body> 
</html> 

getfile.php

<html> 
<head> 
<title>Process Uploaded File</title> 
</head> 
<body> 
<?php 

move_uploaded_file ($_FILES['uploadFile'] ['tmp_name'], 
     "../uploads/{$_FILES['uploadFile'] ['name']}") 

?> 
</body> 
</html> 
+1

這看起來真的離問題很遠...... – fiskolin

+0

我的代碼有效。我沒有看到你的答案。 –