【发布时间】:2021-05-30 09:02:09
【问题描述】:
不知道之前有没有被问过,但是不知道怎么搜索这个问题。 我有一个带有表单和 AJAX 请求的页面。如果用户存在,PHP 代码会异步检查,并在用户请求自动访问时设置 cookie。 cookie 已设置,代码似乎运行良好。如果我尝试使用登录表单读取同一页面中的 cookie 内容(刷新后,这是正常的 - 我知道),我可以看到它。但是当我尝试从另一个页面读取相同的 cookie 内容时,cookie 不存在。就像没有设置一样。这怎么可能?
为了进行测试,一旦 jquery 脚本收到成功响应,我还停用了 JS 重定向,但这并不能解决问题。
使用 jquery.ajax 请求运行的 PHP(它向我显示正确的文本):
setcookie("access", $string, time()+31536000);
if(isset($_COOKIE['access'])) echo "Cookie exists.<br>";
echo "Cookie content: ".$_COOKIE['access'];
在其他网站页面调用connection.php(cookie似乎为空或不存在):
require_once("connection.php");
if(isset($_COOKIE["access"]))
{
echo "I'm in!<br>";
echo "Cookie content: ".$_COOKIE['access'];
}
【问题讨论】: