세션종료 되는 이유
홈페이지를 만들 때 필수는 아니지만 거의 다 포함하고 있는 기능이 "정보수정" 이며, 저 또한 "정보수정" 기능을 구현해보았습니다.
그런데 정보를 수정할 때 패스워드가 아닌 다른 정보의 경우 수정이 되어도 별 문제가 없지만 패스워드를 변경 할 때에는 세션이 종료되는 현상이 계속해서 발생하였습니다.
정확한 이유가 아닐 수도 있지만 제가 생각한 이유는 로그인 한 세션정보와 패스워드를 변경한 후의 세션정보가 서로 다르기 때문에 로그아웃이 되는 것 같습니다.
그래서 이 문제를 해결하기 위해서는 패스워드를 포함한 사용자 정보를 변경한 후 재 로그인 시켜줘야 합니다.
패스워드 변경 후 로그인 세션 유지하기
// 회원정보 수정 use Auth; // Auth 클래스 use App\User; // 사용자 테이블 public function modifyUser(Request $request) { $name = $request->input('name'); $passwd = $request->input('password'); // 로그인 된 유저의 PK 번호가 1 이라고 가정. $user = User::find(1); $user->name = $name; $user->password = bcrypt($passwd); $user->save(); // 세션종료. Auth::login($user); // 재 로그인 하여 세션복구. }
'PHP' 카테고리의 다른 글
[Laravel 5.4] http(80)요청을 https(443)로 Redirect 시키는 방법 (2) | 2017.12.12 |
---|---|
[Laravel] 마이그레이션 에러(Unknown database type enum requested, Doctrine\DBAL\Platforms\MySqlPlatform may not support it.) 해결 방법 (0) | 2017.12.08 |
[Laravel 5.4] 여러개의 데이터베이스에 연결하는 방법 (0) | 2017.02.19 |
[PHP] Laravel 5, Custom Exception 사용하기 (1) | 2017.02.12 |
[PHP]라인 봇(LINE BOT) 사용을 위한 Webhook 기능 사용하기 (0) | 2016.11.16 |