Передан пустой файл (Minishop2 - галерея)
Добрый день, может кто сталкивался с такой историей…
Установил minishop2 на свежий, только что установленный modx. пытаюсь загрузить фотографию в товар, вылазит ошибка: «Передан пустой файл» и ничего не загружается. С чем может быть связано? Изначально думал на права доступа к каталогу, проверил — все хорошо.
Спасибо!
Установил minishop2 на свежий, только что установленный modx. пытаюсь загрузить фотографию в товар, вылазит ошибка: «Передан пустой файл» и ничего не загружается. С чем может быть связано? Изначально думал на права доступа к каталогу, проверил — все хорошо.
Спасибо!
Комментарии: 7
Говорят, на некоторых хостингах и версии PHP 5.3 такое бывает. Я это повторить не смог.
Спасибо, Василий. Действительно, поменял версию php на 7 и все заработало. Спасибо!
Василий поправил этот баг для PHP 5.3 в обновлённой версии miniShop2.
Возникла подобная проблема в php7.
С php5.6 проблема ушла.
UPD/
Проверил и выяснилось что на php7 не работает и простая загрузка картинок через менеджер. Может дело вовсе не в Minishop2
С php5.6 проблема ушла.
UPD/
Проверил и выяснилось что на php7 не работает и простая загрузка картинок через менеджер. Может дело вовсе не в Minishop2
Столкнулся с этой проблемой.
core/components/minishop2/processors/mgr/gallery/upload.class.php
функция handleFile()
При формировании имени временного файла используется константа MODX_BASE_PATH, в результате временный файл создается в корневом каталоге, который у меня защищен от записи. Изменил константу на MODX_ASSETS_PATH, по идее так правильнее
core/components/minishop2/processors/mgr/gallery/upload.class.php
функция handleFile()
При формировании имени временного файла используется константа MODX_BASE_PATH, в результате временный файл создается в корневом каталоге, который у меня защищен от записи. Изменил константу на MODX_ASSETS_PATH, по идее так правильнее
$tf = tempnam(MODX_ASSETS_PATH, 'ms_');
Уважаемые коллеги!
Столкнулся с проблемой в случае использования облачных источников (Swift или Amazon S3, с файловой системой работает исправно).
Окружение: PHP 7.3.12; ModX 2.7.3; Minishop2 2.5.0
Изучение вопроса привело к следующему заключению:
функция handleFile() [файл: core/components/minishop2/processors/mgr/gallery/upload.class.php]
Обработчик не попадает ни в одну из веток, т.к. переменные $_FILES и $this->getProperty('file') всегда пустые:
Подскажите, пожалуйста, в какую сторону копать?
Заранее благодарю за ваше время и помощь.
Столкнулся с проблемой в случае использования облачных источников (Swift или Amazon S3, с файловой системой работает исправно).
Окружение: PHP 7.3.12; ModX 2.7.3; Minishop2 2.5.0
Изучение вопроса привело к следующему заключению:
функция handleFile() [файл: core/components/minishop2/processors/mgr/gallery/upload.class.php]
Обработчик не попадает ни в одну из веток, т.к. переменные $_FILES и $this->getProperty('file') всегда пустые:
if (!empty($_FILES['file']) && is_uploaded_file($_FILES['file']['tmp_name'])) {
....
} else {
$file = $this->getProperty('file');
if (!empty($file) && (strpos($file, '://') !== false || file_exists($file))) {
....
}
}
Есть ощущение что проблема кроется где-то на фронте, но к сожалению в ExtJS не силён.Подскажите, пожалуйста, в какую сторону копать?
Заранее благодарю за ваше время и помощь.
Если используете ispmanager, отключите параметр open_basedir
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.