看起来它应该工作:
if ($_POST['stayloggedin'] == 'stayloggedin') {
setcookie("user", $_POST['mail'], time()+7*24*60*60, '/', 'subdomain.example.com', false, true);
setcookie("hash", md5(sha1(md5($_POST['pw']))), time()+7*24*60*60, '/', 'subdomain.example.com', false, true);
}
header("Location: /");
exit();
Run Code Online (Sandbox Code Playgroud)
我把ob_start()放在代码之上,所以这不应该是重点.
Kev*_*ida 13
确保你的php.ini文件允许使用cookie.此外,你不应该将敏感数据存储在cookie或会话变量中.
建议:改为存储唯一的ID,然后在数据库中查询用户名和密码等详细信息.你只是要求以你的方式进行黑客攻击.
不要消极,只是一个有用的预防性提示.
在setcookie()
调用函数之前,请确保没有向浏览器发送任何输出.ob_start()
应该停止"之前输出setcookie()
"错误,但可能无法正确实现.