【发布时间】:2016-02-16 23:00:21
【问题描述】:
我的登录似乎没有创建 cookie。表单一直到脚本的 cookie 创建部分,甚至会回显 cookie 已创建但实际上并未创建。
这是我的代码的 cookie 部分:
if (!$error) {
if (isset($_POST['rememberme'])) {
setcookie('guruemail', $loginemail, time() + 86400 * 365, '/', NULL);
setcookie('gurupassword', md5($loginpassword), time() + 86400 * 365, '/', NULL);
echo "Long-term cookie made";
} else {
setcookie('guruemail', $loginemail, false, '/', NULL);
setcookie('gurupassword', md5($loginpassword), false, '/', NULL);
echo "Short-term cookie made";
}
}
可以在http://protein.guru/signin.phtml访问登录
cookie测试可以查看:http://protein.guru/testcookie.php
这是 cookietest 代码:
<?php
echo "Value is: " . $_COOKIE[$guruemail];
echo "Value is: " . $_COOKIE[$gurupassword];
?>
登录:
我正在使用电子邮件:tester3651@outlook.com
密码是:肉饼
注意:可能是新手错误? -- 我没有 session_start();在任一代码中的任何位置。不知道我是否需要直接 cookie 登录。
任何反馈都将不胜感激。谢谢大家。
【问题讨论】:
-
您永远不应将登录凭据存储在 cookie 中。
-
使用
$_SESSION而不是$_COOKIE否则你会要求一个糟糕的时间。