使用会话变量永久隐藏 "cookie policy" 横幅

Permanently hide "cookie policy" banner with session variable

好的,我的问题如下:

我有一个在启动时加载的 cookie 策略横幅。从那以后,我用 jquery 编写了一个 "hide" 功能,它在单击文本时使横幅消失。但是一切正常,我不知道如何在浏览网站时隐藏它(当您在网站上更改页面时,横幅会重新出现)。

我假设此问题已通过单击 "hide" 时实例化的会话变量解决?

但是我不知道该把这段代码放在哪里,也不知道如何去做。

jQuery:

$(document).ready(function(){
  $(".cookie-text2").click(function(){
    $("#cookie-container").fadeOut();   
              <?php $_SESSION['noCookPol']= true;?> 
  });
});

我想在这里做的是在使用这个 jquery 函数时实例化会话变量,但是这种方法(显然我做错了)似乎实例化了变量,不管它是否有已被点击。

  1. 我应该在哪里实例化这个变量?
  2. 当使用我的 "if" 语句(应该是 PHP 对吗?)时,我将使用什么代码来永久隐藏有问题的 div?

类似于:

<?php if($_SESSION['noCookPol'] == true) {  

//hide div

}?>

我会使用 jQuery 的 cookie 插件。

设置它

$.cookie('mycookie', 'valueOfCookie')

如评论中所述,这更多是 Javascript 问题。 但简单的解决方案 javascript 可能是:

var exdate = new Date();
exdate.setDate(exdate.getDate() + 365); // 365 is a number of days
document.cookie="cookiePopup=accept; expires=" + exdate.toUTCString();

然后您所要做的就是编写一个 if 语句来检查该 cookie 是否已设置。