1、浏览器开启cookie。
2、删除在setcookie()之前的任何HTTP头部输出。
3、使用php的setcookie()来创建cookie即可。
使用php的setcookie()来创建cookie和php中开启session的 session_start()一样,在setcookie()之前不能有任何HTTP头部输出。我去检查代码,发现如下代码
1
2
|
var_dump( $qOpenId );
setcookie( 'qOpenId' , $openid ,time() + 30 * 24 * 3600, '/' );
|
果断注释var_dump($OpenId)这行,测试,成功。
个人认为,setcookie应该是直接设置http header里面的内容,所以前面不能有任何头部输出,var_dump,echo 什么的都不能有。
知识点扩展:
用法
setcookie(name,value,expire,path,domain,secure)
参数 描述
- name 必需。规定 cookie 的名称。
- value 必需。规定 cookie 的值。
- expire 可选。规定 cookie 的有效期。
- path 可选。规定 cookie 的服务器路径。
- domain 可选。规定 cookie 的域名。
- secure 可选。规定是否通过安全的 HTTPS 连接来传输 cookie。
1
|
setcookie( "webURL" ,<a href= "//www.zzvips.com/" >www.zzvips.com</a>, time()+3600*24);
|
到此这篇关于php如何处理setcookie失效的问题的文章就介绍到这了,更多相关php setcookie失效的解决办法内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.py.cn/php/jiaocheng/34000.html