我正在创建一个应用程序,用户可以在其中注册和登录以添加任务并实现该任务,我尝试使用查询生成器。但是,我无法使用该用户登录。这是我在 Code Igniter 中使用查询构建器的代码示例片段:
public function login_user($username = null, $password = null){
if (is_null($username) || is_null($password) {
return false;
}else{
if (password_verify($password, $db_password)) {
$db_password = $result->row(6)->password;
$result = $this->db->where('username', $username)
where('password', $password)
->get('users');
if(!empty($result)){
return $result->row(0)->id;
}return false;
}
}
}
答案 0 :(得分:0)
在修改了一些代码本身后,我开始使用它。我无法登录的原因是这样的事实:我在密码验证后获取数据库,这将无法正常工作,并且不会获取$db_password
变量的结果。这是我对代码进行的一些修改,可以使它起作用:
public function login_user($username = null, $password = null){
if(is_null($username) || is_null($password)){
return false;
}else{
$this->db->where('username', $username);
$result = $this->db->get('users');
$db_password = $result->row(6)->password;
if(!empty($result)){
//Decrypt password from database when the user logs in
if (password_verify($password, $db_password)) {
return $result->row(0)->id;
}return false;
}return false;
}