2013-08-28 5 views
0

Windows 7 PC에서 xampp과 함께 codeigniter를 사용하고 있습니다.Codeigniter, xampp 쿠키가 설정되지 않음

codeigniter에 내장 된 쿠키를 사용하려고하는데 쿠키를 설정/유지할 수없는 것으로 보입니다. 나는 쿠키 코드가 실행되고 있다는 것을 알고있다. 실제로는 저장하지 않는다.

여기 쿠키 코드입니다 :

$this->input->set_cookie('userID', $userID, time()+259200, 'http://localhost', '/'); 

이를 실행 한 후 모든 페이지에서 내가 설정되고 모든/모든 쿠키를 볼 수 print_r($_COOKIE);을 포함했지만, 아무것도 나타 없습니다.

내가 놓친 것이 있습니까? 따라 문서

답변

0

: 현재 시간에 첨가한다

만료가 초로 설정된다. 시간을 포함하지 말고 지금부터 쿠키가 유효하기를 원하는 초 숫자 부터 시작하십시오. 만료 시간이 으로 설정되면 쿠키는 브라우저가 열려있는 동안에 만 지속됩니다.

그래서 코드는 다음과 같아야합니다

$this->input->set_cookie('userID', $userID, 259200); 

은 또한 난 당신이 config 파일에서 도메인 이름과 쿠키 경로를 설정하는 것이 좋습니다.

+0

내가 당신이 말한대로 일을했습니다. ' '$의 설정 [ 'cookie_path'] \t \t = "/";' : '$의 설정 [ 'cookie_domain'] \t = "// localhost를 HTTP :"나는 내 config.php를에서 다음 설정 그리고'$ this-> input-> set_cookie ('userID', $ userID, 259200);로 바뀌었고 여전히 설정되지 않았습니다. 내가 원래 사용했던 방법이 다른 도메인에서 저에게 효과가 있었다는 점에 유의해야합니다. – Eric

0

여기이 문제에 실행 다른 사람에 대한 해결책 :

쿠키 localhost를 만들 수 없습니다, 대신 http://127.0.0.1를 사용해야합니다.

CI의 application/config/config.php로 가서 localhost에 대한 참조를 변경하고 대신 http://127.0.0.1으로 변경하고 쿠키에 대해 동일한 작업을 수행하십시오. 뿐만 아니라 다음과 같은 변수를 설정

$config['cookie_domain'] = "127.0.0.1"; 
$config['cookie_path']  = "/"; 

그런 다음 쿠키를 저장할 수 : $this->input->set_cookie('userID', $userID, 259200);

관련 문제