禁用 cookie,直到用户通过 javascript 接受它们



有没有办法禁用cookie(当访问者访问网站时)并且仅在访问者给予许可后启用它们?并且全部使用javascript或php。

在欧盟,有新规定要求访客获得此许可。当您访问网站时,只有收集分析结果(如谷歌分析)的 Cookie 才能在未经许可的情况下启用。但是,当您使用 Google 跟踪代码管理器进行再营销等操作时,您应该在您的网站上禁用它,并在顶部显示一个通知栏,访问者可以在其中授予启用它们的权限。

有没有办法用javascript或PHP或两者的组合来实现这一点?

问候 罗伯特

是的 - 这并不难。

<?php
ob_start();
if (!count($_COOKIE) && !$_REQUEST['i_will_accept_cookies']) {
// user has not accepted cookies
include($message_about_cookies);
ini_set('session.use_cookies', 0); // make sure later code doesn't drop them by accident
// Even if not using sessions, it provides a convenient place
// to store the user preferences for the duration of execution
// NB you should also poll this setting before calling setcookie()
} else {
// user accepts cookies
if (!count($_COOKIE)) {
setcookie("i_accept_cookies", "", time() + 3600*24*7);
}
// session_start(); // uncomment if using sessions
// ini_set('session.use_cookies', 1); // only required
// if you've got 0 in the config files
}

您可以将上述内容作为自动预置运行。

您关于 cookie 的消息应包含一个链接/表单/脚本,该链接/表单/脚本将"i_accept_cookies"消息发送回服务器。

最新更新