2013-05-05 77 views
0

我已經設置了if no session OR cookie,頁面將標題索引。會話銷燬工作正常,但Cookie有問題。餅乾沒有立即銷燬,1分鐘後餅乾消失

當我銷燬cookie(註銷)時,頁面並未立即索引,必須等待1分鐘。 1分鐘後cookie不見了。任何人都知道問題在哪裏。

setcookie('id', $id, time()+60, "/"); 

function destroySession() { 
    $_SESSION = array(); 
    if (ini_get("session.use_cookies")) { 
     $params = session_get_cookie_params(); 
     setcookie(session_name(), '', time()-42000, 
      $params["path"], $params["domain"], 
      $params["secure"], $params["httponly"] 
     ); 
    } 
    session_destroy(); 
} 

回答

0

你設置一個cookie的名稱id,並試圖取消設置一個cookie,其名稱是session_name()結果。如果session_name()碰巧返回id,那麼這將起作用,但如果返回其他內容則不會。

我會用session_name()設置Cookie:

$id = session_id(); 
setcookie(session_name(), $id, time()+60, "/"); 

另外請注意,它可能是最好使用session_set_cookie_params()所有參數。當您致電session_start()