我有这个设置cookie的代码:
$root = $_SERVER['DOCUMENT_ROOT'] . '/account_share';
include_once $root . '/php/objects/user.php';
if (session_status() == PHP_SESSION_NONE)
{
session_start();
}
$user = unserialize($_SESSION['user']);
setcookie('email', $user->getEmail(), time()+3600*24*365); //year
setcookie('pass', encrypt($user->getPassword()), time()+3600*24*365); //year
$response = Array();
if(isset($_COOKIE['email']) && isset($_COOKIE['pass']))
{
$response['response'] = 'success';
}
else
{
$response['response'] = 'error';
}
echo json_encode($response);
此处的响应是'成功' - 设置了Cookie。
然后我有这个代码,我尝试在设置cookie后运行:
if (session_status() == PHP_SESSION_NONE)
{
session_start();
}
var_dump($_COOKIE);
这里我在转储后得到这个结果:
array(1) { ["PHPSESSID"]=> string(26) "6i2n4tptlhi39f0mglc9v8ab23" }
我还在Chrome设置中检查了我的Cookie,但找不到它们。
注意:
我在我的本地电脑上使用(现在)xampp。
那么我做了什么错了?!
答案 0 :(得分:1)
您似乎没有选择要使用Cookie的域名。
如果您尝试激活整个域中的Cookie,请修改您的setcookie
代码:
setcookie('cookiename', value, time, '/');