/** * 写入登陆信息 * */ public function login($data = array()) { $data = array_merge($this->bind(), (array) $data); $data = zotop::filter('zotop.user.login', $data); //刷新信息 $this->refresh(); //记录用户数据 zotop::user($data); zotop::log('login', zotop::t('用户 <b>{$username}</b> 于 {$time} 登陆成功', array('username' => $data['username'], 'time' => TIME))); return true; }
/** * 写入登陆信息 * */ public function login($data = array()) { $username = $data['username']; $password = $data['password']; if (empty($username)) { $this->error(zotop::t('请输入登陆账户名称')); return false; } if (empty($password)) { $this->error(zotop::t('请输入登陆账户密码')); return false; } if (!$this->isValidUserName($username)) { $this->error(zotop::t('请输入有效的账户名称')); return false; } if (!$this->isValidPassword($password)) { $this->error(zotop::t('请输入有效的账户密码')); return false; } //检查账户是否存在 if (!$this->isExist(array('username', '=', $username))) { $this->error(zotop::t('账户`{$username}`不存在,请检查是否输入有误!', $data)); return false; } //加密密码 $password = $this->password($password); //读取用户 $user = $this->db()->where(array('username', '=', $username))->where(array('password', '=', $password))->getRow(); //验证 if ($user == false) { $this->error(zotop::t('账户密码`{$password}`错误,请检查是否输入有误!', $data)); return false; } //刷新信息 $this->refresh($user['id']); //记录用户数据 zotop::user($user); zotop::cookie('username', $username, 3600); zotop::log('login', zotop::t('用户 <b>{$username}</b> 于 {$time} 登陆成功', array('username' => $username, 'time' => TIME))); return true; }