У меня есть веб-страница, которая создает файл cookie на компьютере клиента с именем «token» со случайным значением внутри, когда он входит в систему. Этот файл cookie создается с отдельной страницы входа в систему и здесь не включается, поскольку файл cookie уже создается безпроблемы.
Затем я сопоставляю значение маркера cookie с компьютера клиента со значением токена, имеющимся в базе данных SQLite3.Если оба совпадения совпадают, я выбираю адрес электронной почты клиента из той же строки, что и токен.
В настоящее время этот метод работает, если значение маркера cookie и токена базы данных соответствуют ожидаемым.Но у меня возникли проблемы с определением способа, если оба токена не совпадают, поэтому я не смогу показать их по электронной почте.Чтобы быть точным, у меня есть проблема вокруг;
if(!$email)
области кода, потому что я не знаю, как проверить, нет ли электронной почты для возврата.
Вот весь код, которыйПожалуйста, обратите внимание, что такие переменные, как $url
и $db
, уже переданы из внешних файлов *.php
, которые я включил.
<?php include 'root.php';?>
<?php include ''.$root.'/database.php';?>
<?php
$token=$_COOKIE["token"];
$auth = $db->query("select email, token from users where token='$token'");
if(!isset($token)){
header('location: '.$url.'/login');
}
else {
while ($row = $auth->fetchArray()){
$email=$row['email'];
if(!$email){
echo "Didn't find any emails matching with the current cookie.";
}
}
}
?>