laravel的登录和退出
登陆时设置session和cookie:有错误,不要用
public function DoLogin(Request $request, Users $users)
{
if($request->input('phone')){
$rules = [
"captcha" => 'required|captcha'
];
$messages = [
'cpt.required' => '请输入验证码',
'cpt.captcha' => '验证码错误,请重试'
];
//如果仅仅验证captcha的值可以
$validator = Validator::make($request->all(), $rules, $messages);
//判断图片验证码
$i =$validator->fails();
if($i == false){
$login_phone['phone'] = $request->input("phone");
$login_pwd = substr(md5(env('MD5_KEY','').$request->input("pwd")),7,27);
$user = new users();
$users = $user->get_model('users', ['phone=? and pwd = ?', [$login_phone,$login_pwd]]);
if(!empty($users)){
$follow_room = new User_followroom();
$follow_rooms = $follow_room->get_list('user_followroom', ['user_id=?', [$users->id]]);
$follow_rooms = parent::objToArray($follow_rooms);
if($follow_rooms){
$rooms = array();
foreach($follow_rooms as $k=>$room){
$rooms[$k] = $room['followroom'];
}
$users->follow_rooms = $rooms;
}
Session::put("home_users",$users);
setcookie('users_name', $users->name, 0, '/');
$date['login_time'] = date("Y-m-d H:i:s");
$user->update_by_id('users', $date, $users->id);
return redirect('home/index');
$data = ['status' => 0,'info' => '登录成功!'];
}else{
$data = ['status' => 3,'info' => '账号或密码错误!'];
}
}else{
$data = ['status' => 4,'info' => '验证码错误!'];
}
}else{
$data = ['status' => 5, 'info' => '账号密码不能为空!'];
}
return $data;
}退出时删除session和cookie:
public function Logout()
{
Session()->forget('home_users');
Cookie::queue('users_name', null , -1); // 销毁
return back();
}