Загрузка файла из формы в doit-cms

Наша задача: загрузить файл / картинку из формы в doit-cms. Для этого, нам необходимо создать специализированную функцию, которая будет отвечать за непосредственную загрузку файла на сервер.

Создание функции myupload()

В папке app создаем файл с именем myupload.func.php. Содержание файла будет следующим:

<?php

function myupload($myuploadfile)
{
    $name=$myuploadfile['name'];
    $tmp_name=$myuploadfile['tmp_name'];
    
    $picture_adress = '/storage/'.md5_file($tmp_name).'.' . strtolower( substr(strrchr($name, '.'), 1));
    move_uploaded_file($tmp_name,$_SERVER['DOCUMENT_ROOT'].$picture_adress);
    
	return $picture_adress;
}

Функция myupload() будет загружать файл на сервер в папку storage.

Использование функции myupload()

Использование функции myupload() весьма простое. В данную функцию мы должны передать массив с информацией о файле. Этот массив хранится в переменной $_FILES[‘название input file’].

Пример:

d()->foto = d()->myupload($_FILES['foto']);

Функция d()->myupload($_FILES['foto']) загрузит файл на сервер и вернет адрес расположения файла. Исходя из этого, в переменной d()->foto будет храниться адрес загруженного нами файла.

Ниже, сможете скачать готовый файл myupload.func.php.


Скачать myupload.func.zip