如何使用PHP或JavaScript删除特定的cookie前缀



我使用的是codeigniter/grocerycrud,当选择排序列时,它会记住这个顺序,这给了我重新排序其他方向的唯一选择(至少在到期日内)。我想创建一个按钮,只删除与排序相关的cookie。到目前为止,cookie的一个例子是…

隐藏分类_4884b0e57a895f932a0a6f5657128eda

并且所有用于排序的cookie都以CCD_ 1开始,因此具有清除排序按钮是有意义的。关于这是否可能,有什么想法吗?对内置功能的彻底研究是徒劳的。

我可以用jQuery删除全名,就像这样…

$.cookie("hidden_sorting_4884b0e57a895f932a0a6f5657128eda", null);

但是在前缀选择方面存在问题。在jQuery中,您可以执行以下操作:。。。

$('input[products*="hidden_sorting_"]').val

如果我在寻找输入,但把它放在饼干里是我需要的。

试试这个:

<?php
session_start(); ob_start();
function destroyCookies($prefix){
  if(isset($_COOKIE)){
    foreach($_COOKIE as $i => $v){
      if(preg_match("/^$v/", $prefix)){
        setcookie($i, '', time()-3600); unset($_COOKIE[$i]);
      }
    }
  }
}
destroyCookies('hidden_sorting_');
ob_end_flush();
?>

您必须将ob_start()与PHP一起使用,以确保您可以随时设置cookie。

最新更新