0

In my laravel-application I have some input fields like this:

<input name="phone" type="tel" pattern="^[0-9-+s()]*$" class="form-control" placeholder="Telefonnr." required>

<input name="subject" type="text" class="form-control" placeholder="Thema" required> 

...and so on

and in my Controller I have this:

$validator = Validator::make(request()->all(), [
   'email' => ['required', 'email'],
   'name' => ['required', 'string'],
   'phone' => ['string'],
   'subject' => ['required', 'string'],
   'message' => ['required', 'string'],
   'conditions' => ['accepted', 'boolean'],
]);

So far so good, but now I want to customize the error messages. Right now, the error messages are like:

"subject muss ausgefüllt sein"

or

"phone muss angegeben sein"

So, how can I change it to:

"Thema muss ausgefüllt sein" 

or

"Telefonnummer muss angegeben sein"
ST80
  • 3,565
  • 16
  • 64
  • 124
  • 1
    Possible duplicate of [Laravel 5.3 return custom error message using $this->validate()](https://stackoverflow.com/questions/40067212/laravel-5-3-return-custom-error-message-using-this-validate) – Jaquarh Jul 29 '19 at 08:19

2 Answers2

3

You can set custom message in third param of make ..

$validator = Validator::make(
   request()->all(), // data
   [  //rules
   'email' => ['required', 'email'],
   'name' => ['required', 'string'],
   'phone' => ['string'],
   'subject' => ['required', 'string'],
   'message' => ['required', 'string'],
   'conditions' => ['accepted', 'boolean'],
  ],
  [ //messages
  'subject.required' => 'Thema muss ausgefüllt sein'
]);

Source Code https://github.com/illuminate/validation/blob/3ec97a34466541c5802c5da44c831499e32c28ef/Factory.php#L98

hs-dev2 MR
  • 214
  • 1
  • 12
1
        $messages = [
                'subject.required' => 'Telefonnummer muss angegeben sein',
 'subject.string' => 'YOUR CUSTOM MESSAGE',

            ];


        $validator = Validator::make($request->all(), [
            'email' => ['required', 'email'],
   'name' => ['required', 'string'],
   'phone' => ['string'],
   'subject' => ['required', 'string'],
   'message' => ['required', 'string'],
   'conditions' => ['accepted', 'boolean'],
        ], $messages);
Hamid Naghipour
  • 3,465
  • 2
  • 26
  • 55