我有以下内容:
用户点击链接mydomain.com/redirect.php
,通过setcookie
功能获取Cookie(适用于mydomain.com),然后转到另一个页面(header('Location: ...');
) - 说lp.html
然后,在该页面上有一个脚本:
gs('mydomain.com/getcookie.php', 'client=52', function() {});
,此功能如下:
gs = function(path, args, fn) {
var p = document.head || document.getElementsByTagName("head")[0]
var s = document.createElement("script");
p.appendChild(s);
if (fn) {
if (s.addEventListener) {
s.addEventListener('load', fn, false);
} else if (s.attachEvent) {
s.attachEvent("onload", function() {
fn(window.event)
});
} else {
s["onload"] = fn;
}
s.onreadystatechange = function() {
fn()
}
}
s.src = path + "?" + args;
}
getcookie.php
脚本从$_COOKIE
获取一个值(因为它在我的域中)并返回一个小js,如下所示:myParam = 'cookieValue';
以供稍后在js中使用。
所以,这很好用......除了Internet Explorer。只有当我手动允许它接受所有cookie时,它才能在那里工作。
回答 :(感谢duellsy)
添加
header('P3P: CP="CAO PSA OUR"');
header('P3P: CP="HONK"');
答案 0 :(得分:1)
IE有一些很难诊断的Cookie安全问题,请尝试将其添加到页面顶部
<?php header('P3P: CP="CAO PSA OUR"'); ?>
查找Internet Explorer P3P,以了解有关此
的更多信息关于“这是什么”的问题,对SO的反应很好:https://stackoverflow.com/a/5258105/1613391