로그인 정보가 올바른지 확인하는 콜백 기능이 있습니다. 오류가 있으면 오류가 반환됩니다 (정상적으로 작동합니다). 세부 정보가 정확하면 세션을 $this->session->set_userdata('logged_in',TRUE);
으로 설정하고 login
기능을 계속 수행하고 대시 보드로 리디렉션하십시오.이 리디렉션이 정상적으로 작동합니다. 어떤 대시 보드 페이지에 내 function index(){}
에서Codeigniter 310 리디렉션 세션 반환
는
가if($this->session->userdata('logged_in')) redirect('dashboard/home');
위의 라인 내 310 리디렉션을 하나의 원인이되는 라인을 가지고 있지만 그 이유를 확실 해요?
나는 사용자가 dashboard/home
로 리디렉션에 로그인되어 있는지 확인하고자하는 다른 로그인 페이지로 다시 이동하고 home/login
컨트롤러 :
class Home extends CI_Controller {
function __construct() {
parent::__construct();
}
public function index()
{
//if($this->session->userdata('logged_in')) redirect('dashboard/home');
$data['contentMangement'] = $this->options_model->systemOptions();
$data['pageTitle'] = 'Login';
$data['message'] = "";
$this->load->view('_assets/header', $data);
$this->load->view('login', $data);
$this->load->view('_assets/footer');
}
public function login() {
$this->form_validation->set_rules('userEmail','Username', 'required|valid_email|trim|max_length[99]|xss_clean');
$this->form_validation->set_rules('userPassword','Password', 'required|trim|max_length[200]|xss_clean|callback__checkUsernamePassword');
if($this->form_validation->run() === FALSE) {
$data['contentMangement'] = $this->options_model->systemOptions();
$data['pageTitle'] = 'Login';
$data['message'] = validation_errors('<div class="alert alert-error">', '</div>');
$this->load->view('_assets/header', $data);
$this->load->view('login', $data);
$this->load->view('_assets/footer');
}elseif($this->form_validation->run() === TRUE){
redirect('dashboard/home');
}
}
function _checkUsernamePassword() {
$username = $this->input->post('userEmail');
$password = $this->input->post('userPassword');
$user = $this->user_model->check_login($username,$password);
if(! $user)
{
$this->form_validation->set_message('_checkUsernamePassword', 'Sorry the details you provided have not been found');
return FALSE;
}else{
$this->session->set_userdata('logged_in',TRUE);
return TRUE;
}
}
}
dashboard/home에서 유효성 검사 코드를 볼 수 있습니까? – MikeCruz13
@ MikeCruz13 로그인 확인이 필요하십니까? 대시 보드/집에 대한 유효성 검사 코드가 없습니다. –
컨트롤러를 게시 할 수도 있습니까? 귀하의 컨트롤러가 어떻게 생겼는지에 따라 내 대답이 잘못되었을 수 있습니다. – xbonez