Auth : check() 성공은 Auth : attempt() 성공 후 실패합니다. 나는 간단한 인증을 만들기 위해 laracast.com 튜토리얼을 따르고있다. 이 특정 자습서 https://laracasts.com/series/laravel-from-scratch/episodes/15. 그래서 약간의 변경이 4 ~ 5 버전이나 im이 잘못되었다.laravel Auth :: check() 실패
이것은 인증을 수행하고 두 번째 인증이 수행하는 기능입니다. 둘 다 같은 학급에 있습니다.
class User extends Eloquent implements UserInterface, RemindableInterface {
use UserTrait, RemindableTrait;
protected $table = 'user';
protected $hidden = array('user_password', 'remember_token');
protected $fillable = ['user_displayname', 'user_fname', 'user_lname', 'user_email', 'user_password'];
public $errors;
public static $rules = array(
'user_displayname' => 'required|unique:user,user_displayName',
'user_fname' => 'required',
'user_lname' => 'required',
'user_email' => 'required|unique:user,user_email',
'user_password' => 'required'
);
public function isValid($data)
{
$validation = Validator::make($data, static::$rules);
if ($validation->passes()) return true;
$this->errors = $validation->messages();
}
public function getAuthPassword()
{
return $this->user_password;
}
}
두 번째 질문 :
public function store()
{
$credentials = Input::only('user_displayname');
$credentials['password'] = Input::get('user_password');
if (Auth::attempt($credentials))
{
return Auth::user();
}
return 'not logged';
}
public function status()
{
return dd(Auth::check());
}
이것은 사용자 모델입니다. Authetication은 Laravel 세션을 사용합니까 아니면 완전히 다른 것입니까?
편집 :
합니까 인증은 임대 시간 또는 유사한 아무것도 시간이 만료 된 후 단지 세션을 삭제하는 것이? 또한 내 데이터베이스 열 "updated_at"및 "created_at"컴퓨터에 비해 잘못된 시간을 제공합니다. 그래서 Auth가 일종의 시간을 확인한다면 오해의 시간 때문에 항상 실패 할 수있는 기회가 될 수도 있습니다.
P.S 이미 stackoverflow에서 다른 솔루션을 살펴 보았습니다.
)는 (
세션 문제와 유사 해 보입니다. 두 번째 질문에 대답하려면 - 인증은 Laravel 세션을 사용합니다. – Laurence
은 id 열'id' 또는'user_id'입니다. 코드를 보면'user_id'라고 부르는 것 같습니까? 그것은 id 여야합니다. – Laurence
세션 설정에 문제가 있다고 생각하기 시작했습니다. 테스트 할 수있는 세션 수명보다 더 많은 설정이 있습니까? 나는 "config/session.php"수명을 변화 시키려고했지만 영향은 없었다. 또한 user_id를 id로 변경하려고 시도했습니다. 어느 것도. – DasBoot