我正在创建一个应用程序,用户可以在其中注册和登录以添加任务并实现它,我尝试使用查询构建器。但是,我无法使用它登录用户。以下是我在代码点火器中使用查询生成器的代码的示例片段:
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;
}
}
}
在修改了一些代码本身后,我让它工作了。我无法登录的原因是我在密码验证后获取数据库,这将不起作用,并且它不会获取$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;
}