로그인 후 row로 꺼네온값을 변수에담고,
$this->session->set_userdata($userData);후 리다이렉트시켰는데
userdata 값을 꺼넬 수 없습니다.
all_userdata해봤는데 오류나구요..
오토로드 지정 다 해놨고 라이브러리를 수동으로 불러오기도했습니다..ㅠㅠ
도와주세요
소스
컨트롤러
function loginA(){
$this->load->library('session');
$this->load->model('user_model');
$user = $this->user_model->getUserID(array('UID'=>$this->input->post('UID')));
if($this->input->post('UID') == $user->UID && password_verify($this->input->post('UPWD'), $user->UPWD)){
$userData = array('UID'=>$user->UID,'UNAME'=>$user->UNAME,'UEMAIL'=>$user->UEMAIL);
$this->session->set_userdata($userData);
redirect('auth/index');
}else{
redirect('/auth/login');
}
}
모델
function getUserID($option) {
$result = $this->db->get_where('user', array('UID'=>$option['UID']))->row();
return $result;
}
컨트롤러
function loginA(){
$this->load->library('session');
$this->load->model('user_model');
$user = $this->user_model->getUserID(array('UID'=>$this->input->post('UID')));
if($this->input->post('UID') == $user->UID && password_verify($this->input->post('UPWD'), $user->UPWD)){
$userData = array(
'UID'=>$user->UID,
'UNAME'=>$user->UNAME,
'UEMAIL'=>$user->UEMAIL);
$this->session->set_userdata($userData);
redirect('auth/index');
}else{
}
redirect('/auth/login');
}
모델
function getUserID($option)
{
$result = $this->db->get_where('user', array('UID'=>$option['UID']))->row();
return $result;
}
세션 데이타 저장은 잘 하셨습니다.
db 세션이면 로그인시 테이블 내용과 로그인하고 리다이렉트후의 테이블 잘 비교해보세요.
빈 세션이 하나 더 생성됐을겁니다. 포럼에서 세션으로 검색해서 나온 사항들 적용해보세요.
저도 간혹 새로 CI 설치하고 작업할때 세션이 전혀 저장이 안되어서 난감해한적이 종종있습니다
그럴때는 컨트롤러 소스만 백업 한다음에 아예 삭제하고 처음부터 한다는 마음가짐으로 하나씩 설정해 보곤 했습니다
그럼 이상하게 갑자기 되고 그런 ㅡㅡ;
분명 어떤 사소한 설정문제 일것입니다.
천천히 다시 설정해보세요.