Codeigniter:登录功能问题

时间:2016-06-20 21:59:04

标签: php mysql codeigniter

我正在尝试编写如下的基本登录功能。

控制器

public function  submit_login(){
            if($this->input->post('submit')){
                $email= $this->input->post('email');
                $password= $this->input->post('password');
                $this->load->model('user_model');
                $result= $this->user_model->login($email, $password);

            }
        }

模型

public function login($email, $password){
        $this->db->select('email', 'password');
        $this->db->where('email',$email); 
        $this->db->where('password',$password);
        $this->db-> limit(1);
        $query= $this->db->get('user');

        if($query->num_rows()>0){
            return $query->result();
        }
        return false ; 

    }

现在问题是它没有返回我期望它做的事情,它转到else语句,所有发布的字段值和数据库值都是相同的,所以请帮我解决这个问题

2 个答案:

答案 0 :(得分:1)

模型更改如下

$this->db->select('email, password');

答案 1 :(得分:0)

试试这段代码,它可能会有所帮助:

<强>控制器

public function  submit_login(){
        if($this->input->post('submit')){
            $email= $this->input->post('email');
            $password= $this->input->post('password');
            $this->load->model('user_model');
            $result= $this->user_model->login($email);
            if(!empty($result))
            {
               if($result->password == $password)
               {
                    ////do something
               }
               else
                {
                   // print error
                }

            }
            else
            {
            // do something
            }
        }
    }

<强>模型

public function login($email){
    $this->db->select('password');
    $this->db->where('email',$email); 

    $query= $this->db->get('user');
    return $query->row();
 }
相关问题