Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:使用Javascript读取cookie集_Javascript_Php_Jquery_Cookies - Fatal编程技术网

PHP:使用Javascript读取cookie集

PHP:使用Javascript读取cookie集,javascript,php,jquery,cookies,Javascript,Php,Jquery,Cookies,使用Javascript和Jquery,我在单击事件上创建一个cookie,然后将用户重定向到另一个页面。我是这样做的: <script type="text/javascript"> $(".my-div").click(function() { document.cookie ="answers=:" + myAnswers + "; path=/; domain=.mydomain.com;"; setTimeout("location.href = '/my-destin

使用Javascript和Jquery,我在单击事件上创建一个cookie,然后将用户重定向到另一个页面。我是这样做的:

<script type="text/javascript">
$(".my-div").click(function() {

document.cookie ="answers=:" + myAnswers + "; path=/; domain=.mydomain.com;";

setTimeout("location.href = '/my-destination-page.php/';", 5000);

});

</script>

$(“.my div”)。单击(函数(){
document.cookie=“answers=:”+myAnswers+“路径=/;域=.mydomain.com;”;
setTimeout(“location.href='/my destination page.php/';”,5000);
});
当我到达my-destination-page.php时,我可以看到cookie在Google开发者工具中设置正确。但是,PHP没有检测到它已设置:

<?php
var_dump($_COOKIE['answers']);
?>

上面返回一个大的fat空值


知道为什么会发生这种情况吗?

我没有测试您的特定代码——但我知道手动构建原始cookie字符串是一件非常挑剔、容易出错的事情。如果出现错误,服务器上的cookie处理代码(无法识别您的cookie)

既然您已经在使用jQuery,我会尝试使用。即使您不想使用此插件部署,也可以使用它设置cookie,检查请求头,并确定cookie字符串不正确的位置(或确定cookie字符串正确,而问题在其他位置)

尝试更改

document.cookie ="answers=:" + myAnswers + "; path=/; domain=.mydomain.com;";


并检查

您是否尝试了
var\u dump($\u COOKIE)看看它是否在里面?是的。它返回数组(0){}检查请求本身,确保在请求
destination.php
时设置了cookie头。我想知道这里不是缓存问题(所以请求甚至不是由浏览器发送的)。我试过了,但结果没有改变。在这一点上,我想我将使用sessionStorage而不是编写cookie(因为我不需要这个cookie持续超过一个会话)。我以前复制/粘贴您的expires代码时一定出错了。因为我只想让这个特定的cookie持续一个会话,所以我将expires设置为0,并且我能够完美地读取它。非常感谢。
document.cookie ="answers=:" + myAnswers + "; expires=Thu, 12 Aug 2015 20:47:11 UTC;path=/; domain=.mydomain.com;";