我在我的Wordpress安装的根文件夹中有一个PHP脚本
wordpress-root/includes/login.php
当我从主页登录时,我通过AJAX调用此脚本来登录用户。
这是脚本的作用:
if (eveything checks out)
{
//set session variables to track user
//generate a unique auth token
//store auth token in db
//set cookies
setcookie('email',$email,mktime(0,0,0,12,31,2012));
setcookie('authtoken',$authtoken,mktime(0,0,0,12,31,2012));
}
问题是以上一切正常,但cookie不会被设置。我可以在数据库中看到正在输入的条目,并且没有抛出任何错误或警告。
从另一个脚本,我做
var_dump($_SESSION); var_dump($_COOKIE);
我可以看到我设置的会话变量,以及一堆cookies wordpress正在设置,但我看不到我刚设置的cookie。
请注意:以上登录与Wordpress的登录系统无关。我正在创建自己的登录系统。
答案 0 :(得分:1)
我不知道为什么,但很多时候,当我将问题发布到SO时,我找出了问题的答案:/。
无论如何,通过添加setcookie
的剩余参数来实现它。我现在就这样做了:
setcookie('email',$email,mktime(0,0,0,12,31,2012),'/','.example.com');