CI 묻고 답하기

제목 페이지 이동시 세션이 새로 생성됌.
카테고리 CI 2, 3
글쓴이 구구 작성시각 2017/12/02 14:20:12
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 14045   RSS

안녕하세요. 

열심히 검색하며 개발해보던중 이것저것 해결해보다가 안되서 질문드립니다..

 

관리자 페이지를 개발하는 중이며 일반관리자가 있고 그 관리자들을 아우르는 최고관리자가 있습니다.

최고관리자만 볼 수 있는 메뉴들이 있기에 최고관리자로 로그인했을시에 세션에서 username을 가져와서

if문으로 분기시켜서 최고관리자일경우만 해당메뉴를 보여주도록 구현하고자 합니다.

사실 이게 맞는 방법인지는 잘 모르겠습니다.

제가 하고자 하는 방법말고 괜찮은 방법이 있으시면 조언 부탁드립니다.

 

여튼 위와같이 기능을 구현하려고 하는데 문제는 로그인이후 페이지를 리다이렉트로 이동시켜주는데 세션에서 username을 가져오지 못하는것입니다.

로그인과정에서는 해당 세션으로 로그인데이터가 잘 들어가는것을 확인했습니다.

세션디비를 살펴보니 로그인이후 페이지를 이동하니 세션이 여러개 더 생성되고 그 생성된 세션에서 username을 가져오려하더군요...

windows환경에서는 문제없던 세션이 맥북에서 하니까 안되더라구요.(회사에서 작업하던걸 집에와서 맥북으로 복습합니다.)

 

* 처음 로그인 페이지 접속할 시

위와같이 세션이 생성되고 이 세션으로 userdata가 들어갑니다.

session은 autoload에 올려서 사용중입니다.

 

이후 리다이렉션을 이용해서 페이지를 넘기는데

 

이렇게 되버립니다....

 

테이블의 컬럼이 대문자라서 그런거라는 댓글이 있어서 소문자로도 바꿔보고 옵션값들도 전부 false로도 바꿔보고 했는데 흠...

여전히 답을 못찾겠습니다...

비슷한 현상 겪어보셨거나 해결방법을 아시는분은 조언부탁드립니다.

감사합니다.

 

 

 다음글 현재 페이지에 열려 있는 php의 파일 이름을 알 수 ... (4)
 이전글 모델 cannot call constructor 에러 ... (3)

댓글

humit / 2017/12/03 08:02:14 / 추천 0

windows 환경과 맥북 환경이 달라서 그런 것 같네요..(php 버전과 codeigniter 버전)..

맥북 환경에서 codeigniter를 최신 버전으로 업데이트를 해보시면 될 것 같네요.

구구 / 2017/12/04 22:06:00 / 추천 0

자답합니다.

humit님의 조언대로 코드이그나이터 버전을 맞춰서 설치하였습니다.

그러나 증상은 개선되지 않았고 살펴보던 와중에 문제점을  발견하였습니다.

로그인할때 최고관리자는 암호화하지 않고 그냥 디비에 숫자로 넣었었는데 이것이 문제였던것 같습니다.

해서 로그인이 되지 않은채로 그냥 페이지만 넘어가다보니 세션이 새로 생성되는 것 같았습니다.

그래서 기존에 디비에 그냥 쑤셔넣었던 관리자계정은 삭제하고 페이지를 통해 정상적으로 등록하여 로그인하니 한개의 세션만 생성되었습니다.

끝.