Я создал сценарий входа в систему (с большой помощью учебника), который защищает части обслуживания моего веб-сайта. Это работает, и при успешном входе в систему создаются файлы cookie. Проблема в том, что используемый учебник предлагает способ проверить, есть ли (действительные) куки, сохраненные на компьютере пользователя для страниц, которые предназначены только для зарегистрированных людей, но это ничего не дает (так что, вероятно, ошибка). Я не могу найти, что случилось, поэтому я надеюсь, что вы можете помочь мне исправить это. Кстати, печенье остается на полчаса.
<?php
// connect to db
include('connect.php');
// page of login script, used when no/wrong cookie is found
$login_pagina = "login.php";
$sql = "SELECT * FROM members WHERE username='".$_COOKIE['username']."'";
$resultaat = mysql_query($sql) OR die ("Couldn't connect to MySQL");
$aantal = mysql_num_rows($resultaat);
if ($aantal == '0') {
// cookie and databasevalues are not the same
echo "Click <a href=\"".$login_pagina."\">here</a> to login.";
} else {
$login = mysql_fetch_object($resultaat);
if ($_COOKIE['password'] != $login->password) || ($_COOKIE['username'] != $login->username)) {
echo "Cookies couldn't be combined";
} else {
echo "you're logged in!";
}
}
?>
(Поскольку учебник был на голландском, я перевел комментарии и текст. Некоторые переменные все еще на голландском, но я думаю, что это достаточно ясно.)