Cakephp cookie 不起作用或未在服务器上设置,但在本地主机上工作


cakephp cookie not working or not set on server but working on localhost

在我的项目中,我希望为所选属性添加收藏夹或删除收藏夹

在我用来做任务的代码下面......它在本地主机上运行良好。

public function add_favourites(){
   if($this->request->is('ajax') or $this->request->is('post')){  
   $Fav_cookie = $this->Cookie->read('Fav_cookie');
    if(isset($Fav_cookie)){
         $add_fav = $this->request->data['prop_id'];
         $Fav_cookie .= "_".$add_fav;    
         $this->Cookie->write('Fav_cookie', $Fav_cookie, false, '1 Month');
     }else{
         $add_fav = $this->request->data['prop_id'];
         $this->Cookie->write('Fav_cookie', $add_fav, false, '1 Month'); 
     }
     $count_fav = $this->Cookie->read('Fav_cookie');
     $count_fav1 = explode("_",$count_fav);
     echo count($count_fav1);
   }
   exit;

}

public function remove_favourites(){
   if($this->request->is('ajax') or $this->request->is('post')){
     $count_fav = $this->Cookie->read('Fav_cookie');
     $count_fav1 = explode("_",$count_fav);
     if(isset($count_fav1)){
          $remove_fav = $this->request->data['prop_id'];
          if(($key = array_search($remove_fav,$count_fav1)) !== false) {
              unset($count_fav1[$key]);
               }
           }
           echo count($count_fav1);
           $count_fav2= implode("_",$count_fav1);
           $this->Cookie->write('Fav_cookie', $count_fav2, false, '1 Month');
        }
        exit;
   }

但我在实时服务器上使用了相同的代码...

添加收藏夹

运行良好..但删除收藏夹不起作用..

问题仅是实时服务器

删除收藏夹后未设置或写入cookie。

对不起我的英语...

请帮我解决它...

我在 if 条件这 2 行之间更改了我的代码

 $count_fav2= implode("_", $count_fav1);
 $this->Cookie->write('Fav_cookie', $count_fav2, false, '1 Month');

法典:

public function remove_favourites(){
  if($this->request->is('ajax') or $this->request->is('post')){
       $count_fav = $this->Cookie->read('Fav_cookie');
       $count_fav1 = explode("_",$count_fav);
       if(isset($count_fav1)){
           $remove_fav = $this->request->data['prop_id'];
           if(($key = array_search($remove_fav,$count_fav1)) !== false) {
                unset($count_fav1[$key]);
           }
           $count_fav2= implode("_",$count_fav1);
           $this->Cookie->write('Fav_cookie', $count_fav2, false, '1 Month');
       }
       echo count($count_fav1);
    }
    exit;

  }

现在它在本地和实时服务器上工作。

谢谢