Я использую Laravel 5.7.Я застрял на одном.После перенаправления на следующую страницу я не могу получить авторизованные пользовательские свойства.Auth::user()->id
возвращает мне ошибку получения неизвестного свойства undefined.
Auth::check()
также возвращает мне false
.Я проверил много вопросов по стеку и другим платформам, но ни один из них не решил мою проблему.
Вот что я пробовал до сих пор: View:
<form method="POST" action="">
@csrf
<div class="form-group {{ $errors->has('email') ? ' has-error' : '' }}">
<label>{{ __('lang.email_address') }}</label>
<input type="email" name="email" value="{{ old('email') }}" class="form-control" placeholder="{{ __('lang.email') }}">
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
<div class="form-group {{ $errors->has('password') ? ' has-error' : '' }}">
<label>{{ __('lang.password') }}</label>
<input type="password" name="password" class="form-control" placeholder="{{ __('lang.password') }}">
@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
<div class="checkbox">
<label>
<input type="checkbox" name="remember_me" > {{ __('lang.remember_me') }}
</label>
</div>
<button type="submit" class="btn btn-warning btn-flat m-b-30 m-t-30 bg-login"> {{ __('lang.sign_in') }}</button>
<hr/>
<div class="register-link m-t-15 text-center">
<p>
{{ __('lang.forgot_your_password') }} <a href="{{Url('admin/forget-password')}}"> {{ __('lang.click_to_reset') }}</a>
</p>
</div>
</form>
controller:
public function postLogin(Request $request) {
$validator = validator($request->all(),[
'email'=>'required|email',
'password'=>'required'
]);
if($validator->fails()) {
return Redirect::back()->withInput()->withErrors($validator);
}
$user = User::where('role_id', User::ROLE_ADMIN)->where('email', $request->input('email'))->first();
if(!empty($user)){
$userdata = array(
'email'=>$request->input('email'),
'password'=>$request->input('password')
);
if(Auth::attempt($userdata)) {
return redirect('/admin')->with('success', trans('lang.login_success'));
} else {
return redirect('/admin/login')->withInput()->with('error', trans('lang.incorrect_email_password'));
}
}else{
return redirect('/admin/login')->with('error',trans('lang.you_are_not_allowed_action'));
}
}
Я перенаправляю на страницу администратора, но выдает ошибку класса Auth.