[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Автоудаление записей в БД через определенное время
Sergey1974
Доброго дня... Собственно интересует вот такой вопрос. Имеется система регистрации/авторизации, которая при успешном входе заносит запись в таблицу - ид юзера, время входа, ip, некое случайное число, которое используется потом для идентификации юзера в ходе работы с сайтом и кое-что другое... Поле "время входа" обновляется каждый раз при открытии пользователем страницы, отправке сообщения и т.п., если новое время отличается от старого более чем на N минут - запись удаляется, юзер отправляется на повторную авторизацию. Также запись удаляется при нажатии юзером кнопки выхода. Как сделать, чтобы записи просматривались системой например каждые N минут и чистились при необходимости? В голову пришло только cron использовать, а другие альтернативы есть?



Спустя 8 минут, 29 секунд (21.03.2010 - 11:53) phz написал(а):

Спустя 31 минута, 11 секунд (21.03.2010 - 12:24) Sergey1974 написал(а):
Так там и так крон, ну и еще функция админа... В общем, на крон надо вешать... других вариантов не вижу. Спасибо.

Спустя 3 часа, 38 минут, 49 секунд (21.03.2010 - 16:03) FatCat написал(а):
Цитата (Sergey1974 @ 21.03.2010 - 13:24)
В общем, на крон надо вешать... других вариантов не вижу

А они есть. wink.gif
Например в движке этого форума реализовано автоудаление неактивных сессий из БД через 15 минут. Никаких кронов, всё на чистом php.

Если я был единственный на сайте и закрыл окно браузера не нажав кнопки выхода, конечно же запись моей сессии будет лежать в базе сколь угодно долго. Но кого волнует хранящаяся информация, которую никто не просматривает? А при входе первого же посетителя на сайт, срабатывает таск: удаление сессий с истекшим временем, и лишь затем обработка сессии посетителя - в результате первый же посетитель видит только актуальные сессии.

Спустя 2 часа, 36 минут, 30 секунд (21.03.2010 - 18:40) Sergey1974 написал(а):
Понял, спасибо!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.