Reputation: 31
I created laravel 5.2 project. I have been created login page but I am stuck on display validation errors message on blade template. I don't know what I'm doing wrong?
Please help me for this issue. Thanks!
View
<div>
<input type="text" name="email" class="form-control" placeholder="Email"/>
@if($errors->has('email')) <p>{{ $errors->first('email') }}</p> @endif
</div>
Controller
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\User;
use Illuminate\Support\Facades\Validator;
use Illuminate\Support\Facades\Input;
use Illuminate\Support\Facades\Redirect;
use Illuminate\Support\MessageBag;
class AuthController extends Controller
{
public function login()
{
return view('user.login');
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function handlelogin(Request $request)
{
$messages = array(
'email.required'=>'You cant leave Email field empty',
'password.required'=>'You cant leave name field empty'
);
$rules = array(
'email' => 'required|email|max:20',
'password' => 'required'
);
$validator = Validator::make($request->all(),$rules,$messages);
if ($validator->fails())
{
return redirect()->back()->withErrors($validator->errors());
}else{
$data = $request->only('email','password');
if(\Auth::attempt($data)){
return redirect()->intended('/');
}
return back()->withInput();
}
}
}
Upvotes: 2
Views: 15724
Reputation: 10572
I have different approach.
Below input field I include additional view:
@include('input-errors', ['inputName' => 'inputName']) #For your case it would be 'email'
input-errors.blade.php
@foreach ($errors->get($inputName) as $message)
<span class="input-error">{{ $message }}</span>
@endforeach
Styles.css
.input-error {
color: #ff5555;
}
Upvotes: 0
Reputation: 1504
You don't need to check for errors, just do as following
{!! $errors->first('email', '<div class="error-block">:message</div>') !!}
please note that "error-block" is a custom css class and you can customize html template according to your choice.
Retrieving An Error Message With A Format
Upvotes: 3