'NotEmpty' => [
'type' => [
'integer',
'zero',
],
],
'NotEmpty' => [
'type' => [
'integer',
'zero',
],
],
Simba, установка типа обрабатываемых данных в валидаторе NotEmpty не работает, все пропускает
galtsev.t, можно через валидатор, можно так: https://github.com/johncms/johncms/blob/2cbc6a3eabeaded34cd636ea112b7c17272ee4fd/modules/johncms/forum/src/Controllers/FilesController.php#L57-L58 Получаешь расширение, потом с помощью in_array проверяешь.
Через валидатор если, то будет примерно такое правило https://github.com/johncms/johncms/blob/develop/modules/johncms/admin/src/Forms/CreateUserForm.php#L99
Только можно будет юзать MimeType если это не картинки. Ну или проверка по расширению Extension.
Simba, а форматы как можно проверить? через валидатор можно?
Simba, благодарю
galtsev.t,
if($file->getError() === UPLOAD_ERR_NO_FILE) {
$error = 'Файл не выбран!';
} elseif ($file->getError() !== UPLOAD_ERR_OK) {
$error = 'Какая-то другая ошибка загрузки...';
}
// Если не надо отделять ошибку невыбранного файла, то просто
if ($file->getError() !== UPLOAD_ERR_OK) {
$error = 'Какая-то другая ошибка загрузки...';
}
Вообще если тебе надо сделать обязательным поле файла, то добавь атрибут required. На бэке тогда можно будет не детализировать так сильно тексты ошибок.
Simba, а как проверить загрузили файл или нет?
https://www.php.net/manual/ru/function.fastcgi-finish-request.php
Кидаешь ю3еру все хорошо. А в фоне закончит
galtsev.t, так и должно быть. Вызывай getError() из объекта и по нему проверяй есть ли ошибка загрузки или нет. Если 0, то ошибки нет.
Senje, я просто криворукий, там по любому какая то глупая проблема)