今天在配置支付接口回调时发现的一个异常,支付成功后cookie出现空值,几经调试终于发现了问题所在
访问:http://xx.com/p/1.php
1.php里面调用了 setcookie
setcookie("iCookie",'666', time()+3600*24);
这个页面设置了名称iCookie的值为666,查看开发者工具,发现cookie值的path路径自动是按目录 /p
然后访问:http://xx.com/b/2.php
这里的2.php在不同的子目录里
echo $_COOKIE["iCookie"];
发现$_COOKIE["iCookie"]
获取出来的是空值
查看cookie属性它是没有这个名称内容的
一翻对比后,原来是不同的目录置cookie的是不互通的,要想共用它,就要设置path为根目录就可以了
加一个 '/' 就可以了
setcookie("iCookie",'666', time()+3600*24,'/');
难怪难怪
NICE,又有技能可学
我顶,刚好我也遇到了