codeigniter登录2用户

时间:2018-08-11 01:31:21

标签: php codeigniter

我有2个用户,我想制作2页。如果用户A登录,我将显示页面A;如果用户B登录,我将显示页面B。

如何为此做控制器?

我的控制器

public function cekLogin()
    {
        $this->load->library('form_validation');
        $this->form_validation->set_rules('username', 'Username', 'trim|required');
        $this->form_validation->set_rules('password', 'Password', 'trim|required|callback_cekDb');
        if ($this->form_validation->run() == FALSE) {
            $this->load->view('login/login');
        } else {
            if($username=='admin'){
            redirect('Home','refresh');
            } else {
                redirect('HomeMavens','refresh');
            }
        }
    }

我的模特:

public function login($username, $password)
    {
        $this->db->select('id_user, username, password');
        $this->db->from('user');
        $this->db->where('username', $username);
        $this->db->where('password', MD5($password));
        $query = $this->db->get();
        if($query->num_rows()==1){
            return $query->result();
        }else {
            return false;
        }
    }

2 个答案:

答案 0 :(得分:0)

if和else很容易。像这样。

if($query->num_rows() > 0){
    if($query->row()->name == 'a'){
        $this->load->view('page_A');
    }
    elseif($query->row()->name == 'b'){
        $this->load->view('page_B');
    }
    else{
        $this->load->view('login');
    }
}else {
    return false;
}

答案 1 :(得分:0)

我的控制器

public function getlogin(){

    $this->form_validation->set_rules('email_address', 'Email', 'trim|required|xss_clean');
    $this->form_validation->set_rules('password', 'Password', 'trim|required|xss_clean|callback_validatelogin');


    if($this->form_validation->run() == FALSE){
        $message    = "Invalid Login Details";
        $this->session->set_flashdata('message', $message);
        redirect(base_url());
    }else{
        $data  =   $this->usermodel->myaccountdetails();

        if($data['type'] == '0'){
            $this->load->view('pageA');
        }else{
            $this->load->view('pageB');
        }
    }
}


public function validatelogin(){
    $credentials      =   array(
        "email_address"=>$this->input->post('email_address'),
        "password"=>md5($this->input->post('password'))
    );
     return $this->loginmodel->getlogin($credentials);
}

登录模型

   public function getlogin($credentials){
    $this->db->select('*');
    $this->db->from("tbl_login");
    $this->db->where('email_address = ' . "'" . $credentials['email_address']. "'");
    $this->db->where('password = ' . "'" . $credentials['password'] . "'");
    $this->db->limit(1);
    $query = $this->db->get();
    if($query->num_rows() == 1){
        $row            =   $query->row_array();

        $this->session->set_userdata('admin', $row['id']);
        return true;
    }else{
        return false;
    }
}

用户模型

   function myaccountdetails()
    {
       $uid  = $this->session->userdata('admin');
       $sql  =  $this->db->query("select * from tbl_login where id = '".$uid."' ");
       return $sql->row_array();
    }