gpt4 book ai didi

php - JS设置cookie在PHP中不被读取

转载 作者:行者123 更新时间:2023-11-28 10:57:29 25 4
gpt4 key购买 nike

好吧,这让我抓狂。我什至无法让调试代码在这里工作。

使用https://github.com/carhartl/jquery-cookie ,我设置了一个cookie:

var link=$.getQueryParam('q');
var cookie_name="project_"+q+"_diff";
$.cookie(cookie_name,true,{expires:7,path:'/'});

我尝试在 PHP 脚本中读取此 cookie:

$cookie_name="project_".$q."_diff"; 
if($_COOKIE[$cookie_name]=='true')
{
echo "<!-- Cookie Status is TRUE -->";
// stuff
}
else
{
echo "<!-- Cookie Status is FALSE for cookie '$cookie_name' \n All cookies: ".print_r($_COOKIE,true)."\n-->";
// Other stuff
}

我在各种页面重新加载时在 Chrome 控制台中验证 JS cookie 实际上已设置,并且我可以稍后访问它。

源代码结果?

<!-- Cookie Status is FALSE for cookie 'project_80afd7a53462bb02dfd39e359ac3f291_diff' 
All cookies: Array
(
)
-->

我还在控制台中根据另一个 StackOverflow 问题运行了以下代码,并稍后在控制台中检索了结果,但仍然没有输出到 JS。

function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/; domain=.compute.amazonaws.com";
}

我没有拿回任何 cookie。设置有点奇怪(在渲染的 Jinja 模板上运行 PHP),但所有其他标准变量都在工作,我只需要一个 session 长用户切换,cookie 似乎是明显的(如果不合作)解决方案。如果没有人能解决这个问题,我愿意接受建议......

最佳答案

我也有这个问题。我通过删除 cookie 描述中的域解决了这个问题。

示例:

document.cookie="username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC; path=/"; 

附注我在 IE、Chrome 和 Opera 中都发现了这个问题。在 Firefox 中它可以工作。

关于php - JS设置cookie在PHP中不被读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17591069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com