PHP无法跨目录访问,PHP中cookies跨目录无法调用解决办法

当我记录我今天的发现的时候,我首先很感激那些只做开发员工具的人员

我在只做留言板的时候,增加了一个设置回执查询编号的功能,使用该编号可以查询到所有使用该编号的留言,无论是否隐藏。我希望时候cookies写入一个时间,并设置60秒后过期,这样,如果我在设置查询回执编号的页面,如果指定cookies还存在,就让他设置,否则就显示超时(当然存在一系列可能利用的问题,当由于本人技术原因,所以请不要对此砰口水)。

在编写代码的时候,我发现一个问题,我添加留言的时候设置的cookies居然在设置回执编号页面无法调用出来。

谷歌浏览器有一个功能,在“选项”-“高级选项”-“内容设置”-“Cookie”-“所有Cookie和网站数据”,找到你的域名,然后查看cookies是否写入

在测试中,我惊奇的发现,居然有两个名字一样的cookie,仅仅是路径不同,我醒悟过来,是不是

setcookie("messagetime",time(),time()+60);

?>

写法无法跨目录调用呢。在搜索引擎中搜索,并没有找到答案(可能是我用的百度的原因),我想起了手册,貌似手册中cookie还有可选设置。

在PHO手册中知道,后面还可以跟两个值,一个是路径,一个是域,而路径"/"也是相当于域,于是我修改为

setcookie("messagetime",time(),time()+60,"/");

?>

,OK了

其实是一个很简单的问题,只是以为cookie和session作用范围一样,才导致这个错误

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值