Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
2.6k views
in Technique[技术] by (71.8m points)

php - How to check unique email in multiple table using codeigniter?

public function unique_email($email)
{
    $this->db->select('*');
    $this->db->from('instructor, student');
    $this->db->where('instructor.email',$email); 
    $this->db->or_where('student.email',$email);
    $sql = $this->db->get();
    $result = $sql->num_rows();
    return $result;
}

In the above query I am simply trying to get unique email id in multiple tables but the above query doesn't work. I don't know why?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Change your TRUE and FALSE as well check in controller:

In Model

 public function unique_email($email) 
    {
        $this->db->select('*');
        $this->db->from('instructor');
        $this->db->join('student', 'instructor.email = student.email');
        $this->db->where('instructor.email',$email);
    
        $query = $this->db->get();
        if ($query->num_rows() > 0)
        {
            # email exist
            return false;
    
        }
        else {
            # new/fresh email
           return true;
    
        } 
    }

Controller :

function email_exists($email) {
    $result = $this->Register_model->unique_email($email);

    if ($result == TRUE) {
        echo "Email Exists";
    } else {
        echo "New Email";
    }   

}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...