2015-05-04 99 views
1

我試圖插入cookie。邏輯很簡單:如果值不存在,則插入cookie

  • 檢查值是否存在。
  • 如果不是,請用逗號分隔的形式插入新值。

我試了一些代碼,但我無法獲得正確的結果。

在這段代碼中應該插入一個新的值,這個值正在發生但沒有變老。只有餅乾沒有設置

編輯代碼2

 $current_value = ''; 
if(!isset($_COOKIE['blog_id_cookie'])){ 
    setcookie('blog_id_cookie', $id); 
    $current_value[] = $_COOKIE['blog_id_cookie']; 
} else { 
    $current_value = explode(',', $_COOKIE['blog_id_cookie']); 
} 
if(!in_array($id, $current_value)){ 
    $current_value[] = $id; 
    $cookie_name = "blog_id_cookie"; 
    setcookie($cookie_name, implode(',', $current_valu)); 
} 
+1

那麼,什麼是不是現在的工作?只有cookie沒有設置時,'$ current_value'纔會被設置。 –

+0

我得到的只有一個值:',19' –

回答

0

與該代碼$current_value將被定義。在else部分設置$current_value。連接cookie而不是$current_value。試着用 -

更新

$current_value = ''; 
if(!isset($_COOKIE['blog_id_cookie'])){ 
    setcookie('blog_id_cookie', $id); 
    $current_value[] = $_COOKIE['blog_id_cookie']; 
} else { 
    $current_value = explode(',', $_COOKIE['blog_id_cookie']); 
} 
if(!in_array($id, $current_value)){ 
    $current_value[] = $id; 
    $cookie_name = "blog_id_cookie"; 
    setcookie($cookie_name, implode(',', $current_value)); 
} 
+0

沒有得到結果o/p我越來越',22,22,22' –

+0

那麼你需要什麼o/p? –

+0

當我訪問博客的詳細頁面時,我的代碼中插入了一個新的值,如果我訪問22博客22將被插入,那麼如果我訪問15博客15應該插入22 o/p應該是22 ,15 –

相關問題