我正在尝试设置一个 cookie 来记住用户(为期 3 天),这样他们就不必在每次关闭浏览器时登录网站。
我尝试了以下方法:
<?php
if(isset($_POST["logind_ok_tjek"]))
{
if ($stmt = $this->mysqli->prepare("SELECT `id`, `rank_hold`, `navn`, `efternavn`, `email_indhold`, `adgangskode`, `rank`, `img` FROM `bruger` WHERE `email_indhold` = ? or tlf = ? AND `adgangskode` = ?"))
{
$stmt->bind_param('sss', $email_indhold, $tlf, $adgangskode);
$email_indhold = $_POST["email"];
$tlf = $_POST["email"];
$adgangskode = sha1($_POST["pass"]);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($id, $rank_hold, $navn, $efternavn, $email_indhold, $adgangskode, $rank, $img);
$stmt->fetch();
$count = $stmt->num_rows;
$stmt->close();
if($count > 0)
{
$_SESSION["logged_in"] = true;
$_SESSION["id"] = $id;
$_seesion["rank_hold"] = $rank_hold;
$_SESSION["navn"] = $navn . " " . $efternavn;
$_SESSION["rank"] = $rank;
$_SESSION["img"] = $img;
$_SESSION["mail"] = $email_indhold;
setcookie("Navn", $navn . " " . $efternavn, time()+3600);
setcookie("indhold", $rank_hold, time()+3600);
if($_SESSION["logged_in"] == true)
{
if ($stmt = $this->mysqli->prepare('UPDATE `bruger` SET `online_sidste`=? WHERE `id`=?')) {
$stmt->bind_param('si', $online_sidste, $id);
$online_sidste = date('Y-m-d H:i:s');
$id = $_SESSION["id"];
$stmt->execute();
echo "Log ind nu!!";
$stmt->close();
} else {
echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error;
}
}
else
{
echo "Fejl..";
}
}
else
{
echo "Forkert Email eller password.";
}
}
}
?>
要访问 cookie,我正在使用:
<?php
echo $_COOKIE["Navn"];
?>
这是行不通的,但是......