我正在使用make:auth
对注册进行验证,laravel在我的输入未经过身份验证时也会给出验证消息,但这是因为它使用laravel的默认设计,因为我&# 39; m使用我自己设计的注册页面,我想使用一个laravel给出的添加验证消息,但每当我输入错误然后注册时,他们都没有给出验证消息,有没有人知道如何在我的注册设计与laravel registration auth之间建立连接?
答案 0 :(得分:0)
这是如何在刀片中实现它的示例:
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
更多:https://laravel.com/docs/5.2/validation#working-with-error-messages
答案 1 :(得分:0)
由于您没有提及如何覆盖默认注册,我将假设您正在覆盖register
控制器中的App\Http\Controllers\Auth\RegisterController
方法。如果是这种情况,那么您只需在register
方法
public function register(Request $request)
{
// Add this line at the beginning of your register method
$this->validator($request->all())->validate();
// Add your registration code below
}
您还应该在模板文件中显示错误。以下是显示email
字段错误的方法:
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-12 col-xs-12">
<label for="email" class="control-label">@lang('auth/register.email_address')</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-12 col-xs-12">
<div class="input-div">
<input id="email" type="email" class="form-control" name="email" value="{{ old('email') }}" required>
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
</div>
</div>
</div>
答案 2 :(得分:0)
这样做
# add rule
$rules = [
'username' => 'required|string|email',
'password' => 'required',
];
# add custome messages, if needed
$msg = [
'username.required' => 'Username is required',
'password.required' => 'Password is required',
];
# validating those
$validator = Validator::make(Input::all(), $rules, $msg);
if ($validator->fails()) {
# if validation fails
return Redirect::to('URL')->withErrors($validator)->withInput();
}
else {
$username = Input::get('username');
$password = Input::get('password');
if (!Auth::attempt([ 'email' => $username, 'password' => $password])) {
# if login fail
return Redirect::to('URL');
}
else {
# if success
return Redirect::to('dashboard');
}
}
可能有用
use Illuminate\Support\Facades\Input;
use Illuminate\Support\Facades\Validator;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Redirect;
答案 3 :(得分:0)
验证表单,您可以使用以下代码
控制器中的
public function store(Request $request)
{
//
$this->validate($request,[
'enq_source'=>'required|not_in:-1',
'c_person'=>'required',
'p_contact'=>'required',
'email1'=>'required',
]);
$enquiry=new Enquiry;
$enquiry->enq_source=$request->enq_source;
$enquiry->enq_date=date("Y-m-d", strtotime($request->enq_date));
$enquiry->company_name=$request->company_name;
$enquiry->c_person=$request->c_person;
$enquiry->c_designation=$request->c_designation;
$enquiry->state=$request->st;
$enquiry->district=$request->District;
$enquiry->address=$request->address;
$enquiry->p_contact=$request->p_contact;
$enquiry->c_contact=$request->c_contact;
$enquiry->email=$request->email1;
$enquiry->c_profile=$request->c_profile;
$enquiry->purpose=$request->purpose;
$enquiry->sales_person=$request->sales_person;
if(sizeof($request->product_name)>0){
$enquiry->product_name=implode(',', $request->product_name);
}
$enquiry->quantity=$request->quantity;
$enquiry->status=$request->status;
$enquiry->comment=$request->comment1;
$enquiry->save();
$request->session()->flash('success', 'Enquiry successfully Added');
return redirect(route('admin.dashboard'));
}
并制作如下视图
<input id="company_name" name="company_name" type="text" class="form-control" placeholder="Company Name" value="{{old('company_name')}}">
@if ($errors->has('company_name'))
<div class="error">{{ $errors->first('company_name') }}</div>
@endif