PHP: проверка сервера, если пользователь вошел или нет - PullRequest
3 голосов
/ 16 апреля 2011

Я хочу, чтобы я мог сказать, вошел ли пользователь в систему или нет со стороны сервера.В настоящее время он настроен так, что каждая запись пользователя в моей базе данных имеет атрибут loggedin (логическое значение).Если мой пользователь проходит процесс входа в систему, то он / она 'loggedin' устанавливается на '1' (true).Если пользователь проходит страницу выхода из системы, я устанавливаю ее на «0» (false).Моя проблема в том, что если они не пройдут страницу выхода из системы, а вместо этого у них истечет время ожидания файлов cookie?

В надежде помочь кому-нибудь лучше понять, чего я пытаюсь достичь.Я просто пытаюсь создать функцию, которая будет показывать на страницах пользователей, сколько времени прошло с тех пор, как они в последний раз вошли в систему. У меня есть расчет в данный момент, но он показывает либо "пользователь онлайн", либо "онлайн 4 минуты назад" в зависимости отзначение 'loggedin' в базе данных, описанной ранее.Итак, если я зайду на страницу друзей, то она скажет мне, сколько времени прошло с тех пор, как они были включены.

** Просто подумал, может быть, сохранить в базе данных еще один атрибут, который хранит время ожидания файла cookieпосле входа в систему, чтобы я мог проверить значение 'loggedin' и их значение времени ожидания, чтобы определить, какую информацию отображать.Кажется, это не очень хороший способ сделать это, но я не знаю.

Если у вас есть лучший способ сделать это, чем метод, который я описал выше, пожалуйста, подскажите мне :)

Спасибо за любую информацию!

Ответы [ 2 ]

2 голосов
/ 16 апреля 2011

Используйте переменные сеанса:

$_SESSION['logged'] = 1;

Вы можете использовать их в своем скрипте, и их значения будут сохраняться между перезагрузками.

1 голос
/ 16 апреля 2011

создайте заявление, подобное этому

if (isset($_COOKIE['loggedin'])) {
    echo '<p>User is online</p>';
} elseif (!isset($_COOKIE['loggedin'])) {
    echo '<p>User Offline!</p>';
} else {
    // another statement if needed to handle errors
}

Я думаю, что это может быть адаптировано к тому, что вам нужно, если в сценарии входа в систему создается cookie.

Возможно, потребуется немного повозиться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...