테스트 사이트 - 개발 중인 베타 버전입니다

common.php 에서 사용자정의 세션 문제

독풍대인 4년 전 조회 1,794

common.php 화일의 다음 부분에서 사용자가 정의한 ss_lang 이라는 세션변수를

확인 중 입니다.

 

set_session('ss_lang','en');  <- ss_lang에 en 이라는 값으로 정상적으로 들어갑니다.

echo get_session('ss_lang');  <- ss_lang에 지정된 en 값이 출력됩니다.
@session_start();

echo get_session('ss_lang');  <- session_start()를 거치고 나면 ss_lang에 kr 값으로 변경이 되어 있습니다.

 

 

- 카페24로 이전하기 전에는 다른 페이지에서 ss_lang 세션값을 변경한 것을

  홈페이지의 원하는 부분에서 get_session 으로 불러서 사용했었는데, 서버이전 후에 위와 같이

  현상이 발생하더군요.

 

어찌 이런일이 일어날까요? ㅠㅠ 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

독풍대인

common.php안에 있는 @session_start() 를 사용하지 않고

세션변수가 필요한 페이지에 session_start()를 공통으로 사용하니 원하는 대로 변수를 사용할 수 있었네요.

session path 문제가 맞았던 것 같습니다.

 

감사합니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

4년 전

common.php에서 항상, 페이지가 열리때마다 sessio path를 정한 후 session_start를 하기 때문에

common.php를 include하는 페이지에서는 다시  session_start를하지말고

get_session / set_session 만 사용하면 됩니다

 

common.php를 include하지않은 페이지에서 위에서 설정한 세션값을 사용하려면

common.php와 동일한 session path를 설정하고 session start를 하면 됩니다

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

toqurk
4년 전

session_start();가 가장 위에 존재해야 하지 않나요?

세션을 다 만들고 세션스타트해버리면....음....

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

독풍대인
4년 전
세션 위에 해 본것을 궁금해서 테스트를 해본 겁니다. 실제로는 index 에서 en으로 해주고 그 다음 해당 session start 을 타면 kr로 변하는 게 문제라서요
t
toqurk
4년 전
제 말인즉...세션스타트는 따로 추가로 더할 필요가 없다는 의미였습니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인