티스토리 뷰

 

setcookie 사용시 다음과 같은 에러가 발생할수가 있다.

Warning: Cannot modify header information - headers already sent by
...................................

setcookie함수는 페이지 출력전에 호출이 되어야 합니다.

아니면 캐쉬해서 한번에 출력한다.

캐쉬방법은 ob_start() 참고하여서 사용.

http://ir.php.net/manual/kr/function.ob-start.php

 

수정전 SetCookie("user_id", $ID_USER, 0, "/");  

이런  방식으로 사용하던 방식을(상단에 있으면 상관없으나 중간이나 페이지 출력후에 사용 하였으면 수정필요)

수정후 here_setcookie("user_id",$ID_USER, 0);   이런식으로 수정하여 사용한다.

추가 내용
function here_setcookie($name, $value, $expire, $path='/')
{
    if (headers_sent()) {
        $cookie = $name.'='.urlencode($value).';';
        if ($expire) $cookie .= ' expires='.gmdate('D, d M Y H:i:s', $expire).' GMT';
        echo '<script language="javascript">document.cookie="'.$cookie.'";</script>';
    } else {
        setcookie($name, $value, $expire, $path);
    }

}

출처 : http://blog.naver.com/nugu99/70008603717

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함