2011-03-11 2 views
0
echo "<script type=\"text/javascript\">"; 
echo "function del_cookie()"; 
echo "{"; 
echo "document.cookie = logged_amount + '=; expires=Thu, 01-Jan-70 00:00:01 GMT;';"; 
echo "}"; 

echo "</script>"; 

echo "<form action=logout.php name=Logout>"; 
echo "<input type=submit name=submit value=\"Log Out\"> | <a href='./archive.php'>View History</a> | <a href='#' onclick='del_cookie'>Mark as read</a><form>"; 


setcookie("logged_amount", $x, time() + 60 * 60 * 24 * 30); 

"읽은 상태로 표시"를 클릭하면 실제로 작동하지 않습니다. 내가 놓친 게 있니? 또한 쿠키를 $x 값으로 업데이트하고 싶습니다. 사용 https://github.com/carhartl/jquery-cookie가 PHP에서 쿠키를 만들었으니 이제 javascript로 업데이트하려고합니까?

가 JQuery와 쿠키를 읽을 :

답변

0

저는 자바 스크립트를 포기했습니다.

if (isset($_GET['markread'])) { 
    if ($_GET['markread'] == 1) { 
     setcookie("logged_amount", $x, time() + 60 * 60 * 24 * 30); 
     echo "<meta http-equiv='refresh' content='0;url=view.php'>"; 
    } 
} 
0

당신은 jQuery 플러그인을 사용할 수 있습니다

$.cookie('cookie_name') 

를하고 사용 설정 :

$.cookie('cookie_name','cookie_val') 
1
document.cookie = logged_amount + 
       ^   ^

당신은 'didn를 t는 logged_amount을 따옴표로 묶으므로 Javascript는이를 (정의되지 않은) varia로 간주합니다 블레어. 그래서 빈 이름으로 쿠키를 설정하려고합니다. 시도해보십시오

document.cookie = 'logged_amount' + ... 

대신에.

+0

내부에 작은 따옴표를 추가 했는데도 아무 것도 변경되지 않았습니다. 내 코드의 어떤 부분이 잘못되었습니다. 어쨌든 URL을 클릭하여 PHP에서 쿠키를 업데이트 할 수 있습니까? – Kyle

1

참고 : 헤더가 전송 된 후 PHP의setcookie()은 작동하지 않습니다. 즉, echo보다 먼저 setcookie()을 입력해야합니다.

관련 문제