PHP - как сохранить файл в папку на сервере?

PHP — как сохранить файл в папку на сервере?

PHP — как сохранить файл в папку на сервере? Простая задача — но … так ли она проста, тем более — для новичка?

Итак, у нас будет следующая техническая задача:
1. Создание формы, с помощью которой мы будем получать название файла, который мы хотим отправить в папку на сервере
2. Обработка данных в этой форме
3. Отправка файла на сервер
Поехали!

Для решения задачи по созданию формы — создаем ее (кто не знает как — можете прочитать тут). .Форма будет состоять из поля «Файл» и кнопки, которая передает данные:


 

Из интересного — в поле с типом данных «Файл» мы специально сужаем возможность загрузки посторонних файлов на сервер — разрешаем грузить только картинки. Делается это с помощью
accept=»image/*

Как видно из кода формы — за обработку данных у нас будет отвечать файл add_to_base.php. Выглядит он следующим образом:

?php $path = "pic/".$_FILES['photo']['name'];
if(move_uploaded_file($_FILES['photo']['tmp_name'],$path)) { echo $_FILES['photo']['name'].' успешно загружен'; } ?

рассмотрим код более подробно:

$path = "pic/".$_FILES['photo']['name']
  • переменная $path, которая формируется из каталога, куда мы будем сохранять картинку на сервере, и файла — который мы получаем из формы на предыдущей странице (передается этот файл сюда по имени name=»photo»).
if(move_uploaded_file($_FILES['photo']['tmp_name'],$path)) {
echo $_FILES['photo']['name'].' успешно загружен';

move_uploaded_file — функция, которая проверяет — загружен ли файл в указанное место или нет? Если да — выводим уведомление.

Как видите — все просто 🙂
В ближайшее время разберемся с вопросом: как на сайте вывести файл, который расположен на нашем сервере?

В случае возникновения вопросов — пишите на почту, или в Телеграм.