首页 > 后端开发 > PHP问题 > php cookie失效怎么办

php cookie失效怎么办

藏色散人
发布: 2023-03-02 07:48:01
原创
3123 人浏览过

php cookie失效是因为当setcookie中第4个参数为空的话,默认只在当前目录生效,其解决办法就是添加第4个参数,语句为“setcookie("id",$id, time()+36002430 ,'/');”。

php cookie失效怎么办

PHP设置cookie无效问题原因以及解决方案

在某个页面中使用setcookie来设置cookie,例如

setcookie("id",$id, time()+36002430);
登录后复制

但是回到首页之后发现没有生效,用javascript:alert(document.cookie)里面为空,PHP里面的$_COOKIE也是没有数据。

跑到PHP官网查看setcookie的说明,官网的例子也是这样的,但是仔细看来参数说明之后就发现问题了。

setcookie的第4个参数是path

The path on the server in which the cookie will be available on. If set to ‘/’, the cookie will be available within the entire domain. If set to ‘/foo/’, the cookie will only be available within the /foo/ directory and all sub-directories such as /foo/bar/ of domain. The default value is the current directory that the cookie is being set in.
登录后复制

也就是说如果第4个参数为空的话,默认只在当前目录生效,一般情况下是没有问题的。

但是我的站点设置了rewrite,把index.php给隐去了,所以设置的cookie变成只在该页面有效。

解决方案就是添加第4个参数

setcookie("id",$id, time()+36002430 ,'/');
登录后复制

更多相关知识,请访问PHP中文网

以上是php cookie失效怎么办的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板