2016-04-24 5 views
0

Mein Framework ist codeigniter.So senden Sie Parament und Redirect mit CodeIgniter

Ich möchte, dies tun: , wenn der Benutzer anmelden, und klicken Sie nicht auf einem url das nicht genug Erlaubnis hat, es zu sehen, und ich will von aktuellen url-login Seite Benutzer umgeleitet und nach login, ich umleiten Benutzer zu vorherigen url.

zum Beispiel:

//user is not login and click on below `url`. I want to keep `profile` address 
//and redirect to `enter` page with `profile` address. 
www.example.com/profile 

//after login, user will redirect to previous url (www.example.com/profile). 

mein Code:

function userNotLogin(){ 

     $cu = current_url(); 
     $cu = urlencode($cu); 
     redirect(base_url().'index/enter/'.$cu); 
} 

// Anmeldeseite

function enter($before_url) 
    { 
     if($this->isLogged()) 
     { 

      if($before_url) 
      { 
       var_dump($before_url); 
       return; 

      }else{ 
       redirect(base_url()); 
      } 

     }else{ 
      $data = array(); 
      $this->view('page_register_login' , $data); 
     } 

    } 

aber var_dump($before_url); kehrt string(5) "http:".

+1

Stattdessen speichern 'current_url()' Sie können speichern 'controller/method' in der Sitzung und dann' redirect ($ before_url) ' –

+0

für die Login-Ansicht verwenden Sie eine neue Seite oder verwenden Bootstrap-Modal? –

Antwort

0

für das müssen Sie user_agent Bibliothek von CodeIgniter verwenden.

Wie das -

$this->load->library('user_agent'); 
redirect($this->agent->referrer()); 

Es wird zu 100% arbeiten, benutzen Sie bitte diese verwenden ...

Exmaple -

public function login() 
    { 
     $this->load->library('user_agent'); 
     $username = $this->input->post('username'); 
     $password = $this->input->post('password'); 
     $arr = array(
      'username' => $username, 
      'password' => md5($password), 
      'user_type' => 'admin' 
      ); 
     $result = $this->common_model->getMultiple('panel_login',$arr); 
     if(!empty($result)){ 
      $this->session->set_userdata('unique_id',$result[0]['s_no']); 
      $this->session->set_userdata('username',$result[0]['username']); 
      $this->session->set_userdata('password',$result[0]['password']); 
      $this->session->set_userdata('type',$result[0]['user_type']); 
      $this->session->set_userdata('status',$result[0]['status']); 
      $this->session->set_userdata('user_activity',time()); 
      redirect($this->agent->referrer()); 
     }else{ 
      redirect('login_view'); 
     } 

    } 
Verwandte Themen