Codeigniter 4 проблема с загрузкой файлов

147
14 марта 2019, 13:30

Пишу сайт на codeigniter 4 и при использовании input type file вылазит ошибка на роутер в этом месте

$newName = $this->file->getRandomName();

часть кода

$this->file = $this->request->getFile('poster');
$newName = $this->file->getRandomName();
$this->file->move(WRITEPATH.'uploads', $newName);
$this->news->save($this->fieldsTable());
Answer 1

Во-первых, для того, чтобы инициализировать библиотеку файлов с учетом файла, который приходит из формы, нужно написать примерно так:

    $uploadedFile = $this->request->getFile('file');
    $file = new \CodeIgniter\Files\File($uploadedFile);
    $newName = $file->getRandomName();
    $file->move(WRITEPATH.'uploads', $newName);

об этом можно почитать в документации

Во-вторых, не забывайте о том, что работаете не с релизной версией фреймворка, данном случае, возникает ошибка при перемещении файла из временной директории в директорию назначения. Сама ошибка тут system/Files/File.php:173, достаточно исправить

if ( ! @rename($this->getPath(), $destination))

на

if ( ! @rename($this->getRealPath(), $destination))

О разнице этих методов, читайте в документации

READ ALSO
Работа return в php [закрыт]

Работа return в php [закрыт]

Всем приветНе могу разобраться, как работает return в php

144
PHP | Вопрос по переменным и file_get_contents [закрыт]

PHP | Вопрос по переменным и file_get_contents [закрыт]

Как здесь исправить ошибку? Код:

154
Спарсить данные с etherscan [дубликат]

Спарсить данные с etherscan [дубликат]

Данный вопрос является точным дубликатом:

148
Символы и дизайн сайта встал криво

Символы и дизайн сайта встал криво

Поставил себе на сайт скрипт, он видимо поставился криво, что делать? PHP Вот файлы скрипт сайта: https://yadisk/d/nSfKVyIquDXm3 Вот мой сайт: http://fishrich

155