带有 codeigniter 的电子邮件存在功能 php

Email exists function with codeigniter php

我正在使用忘记密码功能,在忘记密码页面上我需要检查电子邮件是否已存在于数据库中,但我在检查电子邮件时遇到问题并且 return 在数据库中找不到电子邮件但它实际上在数据库。

User_model

//Email check for forgot password
public function email_exists($email) {

    $sql    = "SELECT username, email FROM users WHERE email = '{$email}' LIMIT 1";
    $result = $this->db->query($sql);
    $row    = $result->row();

    return($result->num_rows() === 1 && $row->email) ? $row->username : false;

}

控制器

public function forgot_password() {

    if(isset($_POST['email']) && !empty($_POST['email'])) {

        // Load form helper and validation library
        $this->load->helper('form');
        $this->load->library('form_validation');

        $this->form_validation->set_rules('email', 'Email Address', 'trim|required|valid_email');

        if($this->form_validation->run() == FALSE) {

            //Email not valid, return to forgot password page and show error
            $data['title'] = 'Forgot password';

            $this->load->view('header', $data);
            $this->load->view('forgot_password', array('error' => 'Enter a valid email address.'));
            $this->load->view('footer');

        } else {

            $email  = trim($this->input->post('email'));
            $result = $this->user_model->email_exists($email);

            if($result) {
                $this->send_password_to_email($email, $result); //send_password_to_email
                $this->load->view('header');
                $this->load->view('forgot_password_ok', array('email' => $email));
                $this->load->view('footer');

            } else {

                $data['title'] = 'Forgot password';

                $this->load->view('header', $data);
                $this->load->view('forgot_password', array('error' => 'Email address is not found on our database.'));
                $this->load->view('footer');
            }

        }
    } else {

        $data['title'] = 'Forgot password';

        $this->load->view('header', $data);
        $this->load->view('forgot_password');
        $this->load->view('footer');

    }

}

请帮我解决这个问题。如果您需要更多详细信息,请告诉我

您需要将模型函数体更改为:

public function email_exists($email) {

    $sql = "SELECT username, email FROM users WHERE email = '{$email}' LIMIT 1";
    $result = $this->db->query($sql);
    $row = $result->row();

    return $result->num_rows() > 0 ? true : false;
}

我正在更改此行:

return $result->num_rows() > 0 ? true : false;