Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 10.12.2016 19:26:52

Валидация форм

добрый день
делаю проверку ввода данных в форму
код:
if($request->isMethod('post')) {

            $messages = [
                'name.required' => 'Поле имя обязательно к заполнению',
                'email.required' => 'Поле почта обязательно к заполнению',
                'text.required' => 'Поле text обязательно к заполнению'

            ];
            $validator = Validator::make($request->all(), [
                'name' => 'required|max:5',
                'email' => 'required',
                'text' => 'required'
            ], $messages);

            if($validator->fails()){
                return redirect()->route('home')->withErrors($validator)->exceptInput();
            }

в представлении пытаюсь вывести ошибки таким образом:
@if (count($errors) > 0)
        <div class="alert alert-danger">
              <ul>
                    @foreach ($errors->all() as $error)
                              <li>{{ $error }}</li>
                    @endforeach
              </ul>
       </div>
@endif

отправляю пустую форму, но почему-то выводит сообщение, что в поле name должно быть не больше 5 символов, хотя я вообще его не заполнял, и другие правила игнорируются...
из-за чего такое может быть?

Не в сети

#2 10.12.2016 20:07:48

TrueKanonir
Откуда: Ташкент
Сообщений: 221

Re: Валидация форм

Пробовали без PHPif($request->isMethod('post')) ?

Не в сети

#3 14.05.2017 22:56:25

Re: Валидация форм

Подскажите как создать простое правило валидации наподобии:
'age'=>'required|between:3,5',
Нужно разрешить ввод чисел в диапазоне от 5 до 50.

Не в сети

#4 14.05.2017 23:17:56

Re: Валидация форм

Разобрался, нужно было добавить правило "integer" перед диапазоном, иначе считает кол-во символов.
'age'=>'required|integer|between:5,50',
P.S. Почему-то удалить свое сообщение не получается.

Изменено Arni (14.05.2017 23:18:24)

Не в сети

Подвал раздела