autologin vha. cookies
Jeg har denne login funktionalitet på mit site:<?php
settype($id, "integer");
require_once "mysql.inc.php";
class Auth {
var $email = "";
var $password = "";
var $id = 0;
function Auth($email, $password) {
if ($email && $password) {
$this->email = $email;
$this->password = $password;
}
elseif ($_COOKIE['email'] && $_COOKIE['password']) {
$this->email = $_COOKIE['email'];
$this->password = $_COOKIE['password'];
}
}
function opdater() {
//sql("UPDATE bruger SET senestelogin = NOW() WHERE id = ".$this->id);
mysql_query("UPDATE bruger SET forrigelogin = senestelogin, senestelogin = NOW() WHERE id = ".$this->id);
}
function check() {
$id = fetch_field("SELECT id FROM bruger WHERE email = '".$this->email."' AND password = MD5('".$this->password."')");
$this->id = $id;
return $id;
}
function senestelogin() {
return fetch_field("SELECT forrigelogin FROM bruger WHERE id = ".$this->id);
}
function login_kraevet() {
if (!$this->check()) {
header("Location: login.php");
die("Adgang nægtet");
}
}
function logind() {
setcookie("email", $this->email);
setcookie("password", $this->password);
$this->opdater();
}
function logud() {
setcookie("email", 0, 0);
setcookie("password", 0, 0);
}
}
$auth = new Auth($_POST['email'], $_POST['password']);
?>
Nu kunne jeg tænkte mig, at cookie blev gemt selvom brugeren lukker browseren, så der ikke skal logges ind hver dag. F.eks. det i en måned e.l.