2016-11-25 1 views
1

Wie kann ich Login-Session-Namen erstellen? Ich habe es versucht, aber es hat nicht für mich funktioniert.codeIgniter Wie kann ich Sitzung in Login-Controller erstellen

Hier ist mein Code:

loginModel

public function login($name, $pass){ 
    $this->db->select("username", "password"); 
    $this->db->from("users"); 
    $this->db->where("username", $name); 
    $this->db->where("password", $pass); 
    $query = $this->db->get(); 
    $ret = $query->row(); 
    if($query->num_rows() == 1){ 
     return true; 
    } 
    else { 
     return false ;    
    } 
} 

loginControler;

public function checkLogin(){   
    $this->form_validation->set_rules("username", "Username", "required"); 
    $this->form_validation->set_rules("password", "Password", "required");   
    if($this->form_validation->run() == false){    
     $this->load->view("login");    
    } 
    else {    
     redirect("SiteCont/index");    
    }   
} 

public function verifyUser(){ 
    $name = $this->input->post("username"); 
    $pass = $this->input->post("password"); 
    $this->load->model("loginModel"); 
    if($this->loginModel->login($name, $pass)){ 
     return true; 
    } 
    else { 
     $this->form_validation->set_message("verifyUser", "geçersiz kullanıcı adı veya porala"); 
     return false; 
    } 

Nur ich brauche etwas;

if($this->session->userdata('name')){ 
    //show dashboard 
} 
else { 
    //show login 
} 

auf der Anmeldeseite.

Antwort

0

loginModel

public function login($name, $pass){ 
    $this->db->select("username", "password"); 
    $this->db->from("users"); 
    $this->db->where("username", $name); 
    $this->db->where("password", $pass); 
    $query = $this->db->get(); 
    $ret = $query->row(); 
    if($query->num_rows() == 1){ 
     //set the session data (you can add more values to array according to your needs) 
      $data = array(
      'user_id' => $ret->user_id, //change your actual user id field 
      ); 
     $this->session->set_userdata($data); 
     //set the session data 
     return true; 
    } 
    else { 
     return false ;    
    } 
} 

zu überprüfen, um

if($this->session->userdata('user_id')){ 
    //redirect to dashboard 
} 
else{ 
    //redirect to login 
} 

Diese ordnungsgemäß funktioniert. Ändern Sie den Namen der Variablen nach Ihren Bedürfnissen.

+1

danke du hast es mir jetzt funktioniert .. :) –

Verwandte Themen