Ошибка php move_uploaded_file - PullRequest
       13

Ошибка php move_uploaded_file

1 голос
/ 16 октября 2011

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

Предупреждение: move_uploaded_file (bqformtest / uploaded_files / test.doc) [function.move-uploaded-file]: не удалось открыть поток: нет такого файла или каталога в /home/drawapl1/public_html/bqformtest/index.php в строке 40

Предупреждение: move_uploaded_file ()[function.move-uploaded-file]: невозможно переместить '/ tmp / phphhS4QD' в 'bqformtest / uploaded_files / test.doc' в /home/drawapl1/public_html/bqformtest/index.php в строке 40

Это мой код php:

            $target = "bqformtest/uploaded_files/"; 
        $target = $target . basename( $_FILES['upload']['name']) ; 
        if(move_uploaded_file($_FILES['upload']['tmp_name'], $target)) 
        {
        echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded";
        } 
        else {
        echo "Sorry, there was a problem uploading your file.";
        }

Это код моей формы:

<form method='post' action='' accept-charset='UTF-8' enctype='multipart/form-data'>
<input type="file" name="upload" size="50" />
<input id="submitButton" type='submit' name='Submit' value='' />
</form>

Разрешения для папок uploaded_files установлены на 755. Заранее спасибо.

Ответы [ 3 ]

1 голос
/ 16 октября 2011

Укажите полный путь к файлу или правильный относительный путь

$target = "{fullPath}/fileName"; 

неверный путь к файлу

0 голосов
/ 09 апреля 2013

Также проверьте дисковую квоту для пользователя.У меня была эта проблема, и после многих часов тестирования я обнаружил, что это просто.Превышена квота пользователя

0 голосов
/ 16 октября 2011

Из того, что я могу сказать на основании сообщения об ошибке, ваш сценарий находится в ROOT/bqformtest.Затем вы устанавливаете $target для относительного пути: bqformtest/uploaded_files.Это означает, что скрипт попытается переместить загруженный файл из временного каталога в: ROOT/bqformtest + bqformtest/uploaded_files, что приведет к: ROOT/bqformtest/bqformtest/uploaded_files.Установите $target на:

$target = "uploaded_files/";

или

$target = "/home/drawapl1/public_html/bqformtest/uploaded_files/";

, и оно должно работать.

Кстати, вы используете имя загруженного файла безего дезинфекция, которая представляет серьезную угрозу безопасности.Не доверяйте ничему, отправленному пользователем.

...