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

PHP 세션 유지 시간 설정방법 채택완료

지운아빠 10년 전 조회 7,646

안녕하세요. PHP 세션 관련 질문드립니다.

참고로 PHP는 그누보드를 조금 수정해서 사용하는 정도 밖에 모릅니다.

 

현재 프로세스

1. 그누보드를 이용 중입니다.

2. 고객은 xxx.xxx/reseller.php?ms_rid=리셀러아이디 와 같은 URL 로 접속합니다.

3. reseller.php 에서 세션 생성 후, xxx.xxx/index.php 로 이동합니다.

4. 고객이 회원가입 시 추천인에 리셀러아이디가 자동으로 입력됩니다. (세션 이용)

 

문제점

브라우저를 닫았다 열면 세션이 지워져서, 고객이 재접속 시 추천인에 리셀러아이디가 입력되지 않습니다.

 

원하는 해결책

그래서 리셀러아이디 세션이 생성되면 이 부분만 약 1주일 정도 유지되게 하고 싶습니다.

 

도움 부탁드립니다.

 

reseller.php

 

if ($_GET['ms_rid']) $_SESSION['ms_rid'] = $_GET['ms_rid'].'-'.time();
 

 

register_form.skin.php

 

if ($_SESSION['ms_rid']) {</p><p>$ms_rid = explode('-', $_SESSION['ms_rid']);</p><p>$ms_rid = $ms_rid[0];</p><p>}
 

 

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

답변 3개

채택된 답변
+20 포인트
thisgun
10년 전

세션 대신 쿠키로 하심이... ^^

 

reseller.php

 

</span></p><p><span style="font-size: 10pt; line-height: 1.5;"></span>if ( isset($_GET['ms_rid']) ){</p><p>    set_cookie('store_ms_rid', addslashes(strip_tags($_GET['ms_rid'])), 86400 * 7 );   //86400 은 하루입니다. 곱하기 7 하면 일주일</p><p>}<span style="font-size: 10pt; line-height: 1.5;"> </span></p><p>

 

register_form.skin.php

 

</p><p>if ( $return_value = get_cookie('store_ms_rid') ){</p><p>    $ms_rid = $return_value;</p><p>} </p><p>

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

답변에 대한 댓글 1개

지운아빠
10년 전
고맙습니다. :)

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

10년 전

임시키를 발행해서 쿠키를 이요하셔야 할 것 같습니다.

클라이언트에는 남는 정보는 쿠키뿐이니깐요.

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

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

10년 전

세션으로 1주일이나 체크하고 하는것보다 db에 아이디넣고 생성날짜 넣고

날짜 체크해서 이용하는게 더좋아보이네요 

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

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

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

로그인