2016-08-24 98 views
0

我不能刪除cookies,它有時會工作(如何可能?),但如果它開始堅持不刪除錯誤,它永遠不會再工作。我用手機看到這一點,我不能刪除手機上的cookie。 代碼如下所示:無法刪除安全Cookie?

setcookie("cookie_name",$value,strtotime('+4year'),"/",null,null,true); 

當我刪除它,我下面用:

setcookie("cookie_token",'',strtotime('-4year'),"/",null,null,true); 

我用也對此予以肯定:

if (isset($_SERVER['HTTP_COOKIE'])) { 
     $cookies = explode(';', $_SERVER['HTTP_COOKIE']); 
     foreach($cookies as $cookie) { 
      $parts = explode('=', $cookie); 
      $name = trim($parts[0]); 
      //databaseden poza bilersen poz ele 
      setcookie($name, '', time()-1000); 
      setcookie($name, '', time()-1000, '/'); 
     } 
    } 
    session_destroy(); 
    $session = isset($_SESSION) ? $_SESSION : ''; 
+0

你有沒有嘗試javascript來刪除這些cookie? –

+0

不要使用相對時間進行cookie過期。這取決於客戶的時鐘是否準確。而4年的差別不太可能,只要使用時間'1'即可。任何仍然在1970年的人都不應該期望在他們的電腦上正常工作。 –

+0

@MarcB我用它是這樣的:setcookie(「cookie_name」,'',1,'/');但沒有工作。有另一種選擇? – Alex

回答

-1

您是否嘗試過使用unset功能?我的意思是:unset($_COOKIE['cookieName'])

+0

未設置($ _ COOKIE ['cookieName'])不起作用,它不是刪除cookie的方式 – Alex

+0

$ _COOKIE本質上是隻讀的。任何對它的寫入操作都不會觸發客戶端的新cookie標頭。你必須使用'setcookie()'來修改cookie客戶端。 –

+0

@MarcB但設置Cookie不適合我, – Alex