@Gera01
Unity, С# и больше ничего.

Почему функция загрузки картинки через форму post не работает?

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

if($_SERVER['REQUEST_METHOD'] == 'POST')
    {  
        print_r($_FILES);

        $uploaddir = '/Galery/';
        $uploadfile = $uploaddir . basename($_FILES['image']['name']);

        if (move_uploaded_file($_FILES['image']['tmp_name'], $uploadfile)) {
            echo "Файл корректен и был успешно загружен.\n";
        } else {
            echo "Возможная атака с помощью файловой загрузки!\n";
        }



Что выдает страница

Warning: move_uploaded_file(/Galery/w.png): Failed to open stream: No such file or directory in /Applications/MAMP/htdocs/AddArticle.php on line 17

Warning: move_uploaded_file(): Unable to move "/Applications/MAMP/tmp/php/phpFWuo8r" to "/Galery/w.png" in /Applications/MAMP/htdocs/AddArticle.php on line 17
Возможная атака с помощью файловой загрузки!
  • Вопрос задан
  • 77 просмотров
Решения вопроса 1
sslion
@sslion
В тексте ошибки же по-человечески (хоть и на буржуйском) написано, что папки не существует...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@aspirantes
https://www.php.net/manual/ru/features.file-upload...

Оригинал документации здесь. Может доступа к директории нет, но по ошибке, скорее всего файл не загрузился. По ссылке есть пример фронта.
Ответ написан
Комментировать
tomclancys
@tomclancys
Добавьте после $uploaddir = '/Galery/';

if (!file_exists($uploaddir)) {
mkdir($uploaddir, 0755, true);
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы