2012-01-30 5 views
1

내가 페이지 (의 mypage.html)가를 읽을 수 없습니다 :은 항상 다음과 같이 쿠키를 설정 세션 쿠키

echo "cookie is ". $_COOKIE['sessionid']; 

I는 그것을해야 ... 예를 들어, 헤더, 에코 명령은 쿠키 이름을 포함의 mypage.html, 오전 때

쿠키 4d40102ff2d2268d907dd31debc411e2 쿠키 4d40102ff2d2268d907dd31debc411e2

입니다하지만 쿠키를 설정 페이지에서 aeway 이동하는 경우, 내가 보는 모든

쿠키와

입니다 이름 없음 - mypage.html로 돌아 가면 문제없이 다시 읽습니다. 나는 이것이 어떻게 일어날 수 있는지 전혀 모른다? 어떤 아이디어?

+0

더 나은 사용 $에 _SESSION 대신 $ _COOKIE의를. – powtac

+0

대런 환영합니다. 그리고 @powtac이 옳다. 컨텍스트에서이 var을 사용하면 SESSION이 더 좋다. –

답변

1

쿠키의 명시 적 경로를 설정하십시오. 기본값은 현재 디렉토리 뿐이므로 다른 디렉토리의 스크립트로 이동하면 브라우저가 쿠키를 다시 보내지 않습니다.

// Cookie is valid for all paths (/) in the current domain 
// This also has an explicit expiry time of 1 hour from the time it's set... 
setcookie ("sessionid", md5 (uniqid (rand())), time() + 3600, "/"); 

그것은 비록 자신의 세션 쿠키를 설정 될 조금 특이한입니다, 단순히 세션을 시작할 때 당신을 위해 그것을 처리합니다

session_start(); 
// Id is set for you... 
echo session_id();