2015-08-14 3 views
1

Я вернулся к этому вопросу, не могу найти решение. Мой файл, который я пытаюсь загрузить, не перемещается. Я использую WAMP, а моя корневая папка - C: \ wamp \ wwwPHP пытается переместить файл с файлом move_uploaded_file

Я проверил, что каталог существует в php и помещен в скрипт, который, если он не существует, должен быть создан, который работает, но но он не перемещает файл. Что я делаю не так?

Форма:

<form enctype="multipart/form-data" action="upload.php" method="POST"> 
<input type="hidden" /> 
Choose a file to upload: <input name="uploadedfile" type="file" /><br /> 
<input type="submit" value="Upload File" /> 
</form> 

upload.php

$target_path = "uploads/" ; 
if(!file_exists($target_path)) { 
    mkdir($target_path, 0755, true); 
    echo "The directory was created"; 
} 
$tmp_name = $_FILES['file']['tmp_name']; 
$target_path = $target_path . basename($_FILES['uploadedfile']['name']); 
echo $target_path; 

if(move_uploaded_file($tmp_name, $target_path)) { 
    echo "The file ". basename($_FILES['uploadedfile']['name']). 
    " has been uploaded"; 
} else{ 
    echo "There was an error uploading the file, please try again!"; 
} 
+1

вы просто предполагая, что загрузка выполнена успешно. вам нужно проверить '['error']' в $ _FILES ** FIRST ** перед тем, как сделать что-нибудь еще. –

+1

Можете ли вы также использовать свой HTML-код? и Да '['error']' может предоставить дополнительную информацию – Yogesh

+0

Спасибо. Я добавил форму в свой вопрос выше, а затем использовал print_r ($ _ FILES); для проверки переменной, но нет ошибки: Array ([uploadedfile] => Array ([name] => ts.txt [type] => text/plain [tmp_name] => C: \ wamp \ tmp \ php48A8.tmp [ошибка] => 0 [размер] => 803390)) – Wilest

ответ

0

пытаются изменить,

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

в

$tmp_name = $_FILES['uploadedfile']['tmp_name']; 
+0

Спасибо, теперь я чувствую себя идиотом! Я забыл, что все это время! – Wilest

Смежные вопросы