PHP Cookies not setting


PHP Cookies not setting

我有一个脚本,所以当用户在联系我表单上输入错误的验证码时,它会将用户表单数据保存到cookie中,以便在用户必须重新输入验证码时可以调用。但它并没有保存cookie,我已经检查了Chrome调试器,它什么也没做。

这是代码,在有人问之前,我已经检查了变量是否成功工作;)

$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
setcookie("name", $name, time()+3600, "/", "http://pattersoncode.ca");
setcookie("email", $email, time()+3600, "/", "http://pattersoncode.ca");
setcookie("message", $message, time()+3600, "/", "http://pattersoncode.ca");

问题是域参数中的http://;它指定了一个协议,即HTTP,并且不是域的一部分。

如果要设置对example.com有效的cookie,则subdomain.example.com将仅在该子域上工作,而设置.example.com将在所有子域(包括根域)上工作。

简而言之,试试这些:

setcookie("name", $name, time()+3600, "/", ".pattersoncode.ca");
setcookie("email", $email, time()+3600, "/", ".pattersoncode.ca");
setcookie("message", $message, time()+3600, "/", ".pattersoncode.ca");