function test_user() { $cookie_username_token = login_en_code(M('User')->where('username="******"', cookie('username'))->getField('random') . cookie('username')); if (session('user_status') != 1 && cookie('token') != $cookie_username_token) { return false; } else { return true; } }
public function autologin() { if (session('user_status') == 2 || session('user_status') == 1) { return true; } else { session('user_status', 0); if (cookie('token') != NULL) { $userinfo = M('User')->where('username="******"', cookie('username'))->find(); if (cookie('token') == login_en_code($userinfo['random'] . $userinfo['username'])) { session('user_status', 2); } } } }
public function register($username, $password, $email, $code) { if (IS_POST) { $d = time(); //待处理的日期 $w = date("w", $d); //这天是星期几 if ($code == NULL) { echo json_encode(array('error' => '邀请码不是一个有效项')); return; } $isCounterCode = false; if ($code == 'can') { $c = new \SaeCounter(); if (($yqmCounter = $c->get('yqm')) > 50) { echo json_encode(array('error' => '人数已满')); return; } else { $isCounterCode = true; } } if ($code != 'cccc' . $w * 4 && !$isCounterCode) { echo json_encode(array('error' => '邀请码不是一个有效项')); return; } $resArr = D('User')->CreateUser($username, $password, $email); // 注册后立即登录 if ($resArr['info'] == 'Success') { $c->set('yqm', $yqmCounter + 1); cookie('token', login_en_code(D('User')->login_random($username) . $username)); cookie('username', $username); session('user_status', 1); } echo json_encode($resArr); } }
public function register($username, $password, $email) { if (true) { $resArr = D('User')->CreateUser($username, $password, $email); // 注册后立即登录 if ($resArr['info'] == 'Success') { cookie('token', login_en_code(D('User')->login_random($username) . $username)); cookie('username', $username); session('user_status', 1); } echo json_encode($resArr); } }
public function ChangePassword($old, $new) { $resultArr = array('status' => false); if (!test_user()) { $resultArr['error'] = '登录已失效'; return $resultArr; } $userinfo = $this->where('username="******"', cookie('username'))->find(); if ($userinfo['password'] != login_en_code($old)) { $resultArr['error'] = '旧密码不对啦~'; return $resultArr; } if (!preg_match('/[\\S]{6,128}/', $new)) { return $jsonResult = array('status' => false, 'error' => '密码不符合条件<br/>请输入6-128位密码'); } $data = array('password' => login_en_code($new)); trace($data, 'debug'); if ($this->where('username="******"', cookie('username'))->save($data)) { $resultArr['status'] = true; $resultArr['info'] = '修改密码成功'; } else { $resultArr['error'] = '修改密码失败,密码未变动或系统错误'; } return $resultArr; }