有没有办法在一个页面内,设置COOKIE,然后获取到该COOKIE
而不是第二次访问页面才拿到COOKIE
下个页面加载才可访问,不行的吧。
直接赋值不就行了?
setcookie('name', $val);
$_COOKIE['name'] = $val;
但有什么意义呢?
直接赋值不就行了?
setcookie('name', $val);
$_COOKIE['name'] = $val;
但有什么意义呢?
请问,例如INDEX.PHP,是不是一定要等它脚本执行完毕了,这个COOKIE才会存起来。
如果其中异步请求一个TEST.PHP,而且不等这个文件的返回结果,INDEX.PHP继续执行完毕。
这个TEST.PHP能否拿到COOKIE
基本概念
$_COOKIE 中的值是浏览器发送过来的
setcookie 设置的 cookie 是通过 http 协议头发送给浏览器的
只要浏览器收到了完整的 http 协议头,那么其中的 cookie 就开始生效了
如果 INDEX.PHP 中异步请求一个TEST.PHP, 这个 test.php 是能够获得该 cookie 的
如果异步的test.php请求属于同一浏览器的线程(选项卡)那也能够获得该 cookie
如果异步的test.php请求属于不同的浏览器的进程(在系统中又打开一个浏览器)那就必须等待index.php结束也能够获得该 cookie,当然还和失效期有关
同意楼上的解释