2015-05-04 68 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 –

相关问题