我在网站上设置的用于记住用户的cookie功能无效,我不知道为什么?...我已经尝试过并尝试过,但每次都失败了!这似乎是登录功能的错误?以下是我正在使用的代码,如果你们可以看看并给我一些很棒的选项!
checkuser.php:
if (empty($_POST) === false) {
$username = $_POST['username'];
$password = $_POST['password'];
$rememberme = $_POST['rememberme'];
if (empty($username) === true || empty($password) === true) {
header('Location: login.php?loginerror=2');
} else if (user_exists($username) === false) {
header('Location: login.php?loginerror=3');
} else if (user_activated($username) === false) {
header('Location: login.php?loginerror=4');
} else {
$login = login($username, $password);
if ($login === false) {
header('Location: login.php?loginerror=5');
} else {
if ($rememberme == "on"){
$cookievalue = $login;
setcookie("login", $cookievalue, time()+3600*24);
session_register('userid');
$_SESSION['userid'] = $login;
mysql_query("UPDATE users SET last_login=CURDATE() WHERE username='$username'");
echo '<meta http-equiv="refresh" content="0;url=welcome.php">';
exit();
}
if ($rememberme == ""){
session_register('userid');
$_SESSION['userid'] = $login;
mysql_query("UPDATE users SET last_login=CURDATE() WHERE username='$username'");
echo '<meta http-equiv="refresh" content="0;url=welcome.php">';
exit();
}
}
}
users.php:
function logged_in() {
if (isset($_SESSION['userid'])){
$loggedin = TRUE;
return $loggedin;
}
if (isset($_COOKIE['login'])){
$loggedin = TRUE;
return $loggedin;
}
}
当我只使用会话代码时系统工作正常但是当我尝试使用cookie时,它会给我一个错误并且网站崩溃说它永远无法完成。