2012-10-01 6 views
4

방금 ​​동일한 도메인의 다른 페이지에 설정된 쿠키에 액세스하려고하지만 작동하지 않습니다. echo $_COOKIE 일 때 배열은 새 페이지에서는 비어 있지만 생성 페이지에는 쿠키가 포함되어 있습니다. 여기 PHP 쿠키가 작동하지 않습니다.

여기 /INC/HEADER.INC.PHP

if (isset($_COOKIE['username']) && isset($_COOKIE['password'])) { 
include("pages/user.header.pages.php"); 

의 코드입니다

//Set the cookie for 1 year. 
setcookie("username", $username, time()+365*24*60*60); 
setcookie("password", $password, time()+365*24*60*60); 

/PROC/LOGIN.PROC.PHP의 코드 그러나 나는려고 할 때 쿠키를 설정하거나 header.inc.php의 배열 만 표시하면 배열이 비어 있습니다.

+0

그건 그렇고, 난 로컬 (로컬 호스트)에서 일하고있어 –

+13

쿠키에 암호를 저장하지 마십시오! –

+0

$ _COOKIES 변수에있는 값을 표시하려면 var_dump ($ _ COOKIES)를 실행하십시오. 인쇄 만 실행해도 배열의 내용은 알려주지 않습니다. –

답변

11

당신은 as per the docs, 도메인의 루트에 쿠키의 path 값을 설정해야합니다

setcookie("username", $username, time()+365*24*60*60, '/'); 

그렇지 않으면, 그것은 당신의 예를 들어 /PROC/입니다 현재 작업 디렉토리로 설정됩니다. 따라서 /PROC/의 스크립트 만 해당 쿠키를 사용할 수 있습니다.

관련 문제