При нажатии на кнопку отправки, браузер будет загружать файл в запросе POST, передачей управления Joomla, который будет вызывать components / com_mycomponent / form_handler.php. Это будет включать в себя код, подобный следующему. Переменная $somepath должен быть установлен в какой-то путь, где веб-сервер имеет разрешение на создание файлов.
// Проверка , что этот файл включен в Joomla!
defined('_JEXEC') or die( 'Restricted access' );
// Получить массив данных файла из запроса.
$file = JFactory::getApplication->input->get( 'Filedata', '', 'files', 'array' );
// Сделать имя файла безопасным.
jimport('joomla.filesystem.file');
$file['name'] = JFile::makeSafe($file['name']);
// Переместить загруженный файл в постоянное место.
if (isset( $file['name'] )) {
// Убедитесь , что полный путь к файлу является безопасным.
$filepath = JPath::clean( $somepath.'/'.strtolower( $file['name'] ) );
// Переместить загруженный файл.
JFile::upload( $file['tmp_name'], $filepath );
}