2011-04-13 4 views
0

방금 ​​문제가 발생했습니다. 사용자가 사이트를 떠난 다음 다시 돌아올 때 바구니 정보를 검색하기 위해 세션 ID를 쿠키에 저장합니다. 내 문제는 테스트로 모든 세션을 지웠지 만 쿠키를 유지했지만 지금은 페이지가 계속로드됩니다.php - 서버에 세션 파일이 있는지 확인하십시오.

내 질문에, 거기에 첫 번째 방법은 세션 ID를 저장하는 경우 다음 날 테스트를 위해 tmp 디렉토리를 얻기 위해 PHP를 사용하는 것입니다.

관련,

편집

나는 현재 나에게 문제가 신뢰할 수없고 불필요

+0

PHP는 "부실한"세션을 정리하고 특정 세션의 존재 여부를 확인해야 할 이유가 없습니다. –

+0

'$ cookieKey'는 어디에서 왔습니까? 여러 사용자간에 세션을 공유하려고하시는 건가요? –

+0

아니요, 공유 된 SSL을 통해 세션 공유 –

답변

1

을주고있다

if(isset($_COOKIE[$cookieKey])) { 
    session_id($_COOKIE[$cookieKey]); 
} 
// create a new or carry on the existing session 
session_start(); 

를 사용합니다. 대신, 적절한 키가 (더 나은) 코드에서 검사가 $_SESSION 자동 전역이 비어 있거나 여부를 확인하기 위해 추가

<?php 
if(!isset($_SESSION['foo'])){ 
    // User is not fooed yet 
    $_SESSION['foo'] = 33; 
} 
find_records_by_foo($_SESSION['foo']); 

업데이트 : 아무리 쿠키 및 세션 ID가 수행 할 작업을, 내 대답은 여전히 ​​적용됩니다. 쿠키 검사가 끝나면 isset()으로 세션 테스트를하십시오.

관련 문제