Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.12.2009, 00:57   #1
bloger
Пользователь
 
Регистрация: 19.11.2009
Сообщений: 12
По умолчанию Алгоритм последнее посещение

Как реализовать Последнее посещение пользователя.Данные о дате регистрации хранятся в бд.А как сделать посещения посл. не знаю,может кто то даст подсказку, и как определить пользователь на сайте или нет (Online/Ofline).Спасибо.
bloger вне форума Ответить с цитированием
Старый 20.12.2009, 12:37   #2
hoza_syl
Форумчанин
 
Аватар для hoza_syl
 
Регистрация: 23.05.2008
Сообщений: 219
По умолчанию

Делаеш в БД поле, в котором будет хранится дата последнего посещения, и каждый раз, когда пользователь логинится на сайте, обновляешь это значение. С оф/онлайн то же самое - когда пользователь заходит на сайт - ставишь в отдельном поле БД признак ОНЛАЙНА, а когда пользователь выходит - снимаешь его.
The Revolution is Now!
hoza_syl вне форума Ответить с цитированием
Старый 20.12.2009, 13:32   #3
spein
Программист
Форумчанин
 
Аватар для spein
 
Регистрация: 27.02.2009
Сообщений: 505
По умолчанию

Тоесть пользователь будет онлайн, пока не нажмет кнопку закончить сессию(coockie)?? Бред... Интереснее кто-то может что-то придумать?)
there are no limits when you're software engineer
spein вне форума Ответить с цитированием
Старый 20.12.2009, 13:59   #4
hoza_syl
Форумчанин
 
Аватар для hoza_syl
 
Регистрация: 23.05.2008
Сообщений: 219
По умолчанию

Нет блин! Время от времени нужно проверять таблицу, и если от последнего действия пользователя прошло больше чем например 10 минут - то тогда закрываешь сессию и удаляешь признак ОНЛАЙНА.
The Revolution is Now!
hoza_syl вне форума Ответить с цитированием
Старый 20.12.2009, 14:30   #5
spein
Программист
Форумчанин
 
Аватар для spein
 
Регистрация: 27.02.2009
Сообщений: 505
По умолчанию

Например?)
there are no limits when you're software engineer
spein вне форума Ответить с цитированием
Старый 20.12.2009, 14:52   #6
hoza_syl
Форумчанин
 
Аватар для hoza_syl
 
Регистрация: 23.05.2008
Сообщений: 219
По умолчанию

Например:

Пр каждом обращение пользователя к серверу время и дата этого обращения заносится в отдельное поле. Также у тебя есть некий скрипт, например close_sess.php, который запускается например каждые 10 минут, или каждый раз когда надо обновить пользователей онлайн - он пробегает по базе юзеров, и если с времени последнего действия пользователя прошло некое время - удаляем признак того, что юзер онлайн!
The Revolution is Now!
hoza_syl вне форума Ответить с цитированием
Старый 20.12.2009, 15:07   #7
spein
Программист
Форумчанин
 
Аватар для spein
 
Регистрация: 27.02.2009
Сообщений: 505
По умолчанию

каким образом он будет запускаться каждые 10 минут?
there are no limits when you're software engineer
spein вне форума Ответить с цитированием
Старый 20.12.2009, 15:22   #8
hoza_syl
Форумчанин
 
Аватар для hoza_syl
 
Регистрация: 23.05.2008
Сообщений: 219
По умолчанию

Самым обыкновенным! В каждом скрипте, в котором необходимо выводить статус юзера - проверяем если после последнего запуска прошло более чем 10 минут - запускаем скрипт. Сразу отвечу на вопрос как проверять - опять база данных - в какой нить служебной таблице надо хранить время последней "чистки". Таким образом - если маленькая посещаемость - чистка будет происходить только тогда, когда нужно ОБНОВЛЕНИЕ статуса юзера. И фиг с ним, что юзер может висеть он-лайн 3 дня - потому что никто не запросил нужную страницу - видь этого и никто не увидит))
The Revolution is Now!
hoza_syl вне форума Ответить с цитированием
Старый 20.12.2009, 15:31   #9
spein
Программист
Форумчанин
 
Аватар для spein
 
Регистрация: 27.02.2009
Сообщений: 505
По умолчанию

а теперь включи свою мозгу и подумай какую нугрузку это будет делать на таком сайте как vkontakte например. После 5 минут такой проверки весь сервис умрет.
there are no limits when you're software engineer
spein вне форума Ответить с цитированием
Старый 20.12.2009, 15:40   #10
hoza_syl
Форумчанин
 
Аватар для hoza_syl
 
Регистрация: 23.05.2008
Сообщений: 219
По умолчанию

Блин - если знаешь алгоритм по круче - то предложи, я другого алгоритма придумать не смог! И незачем кидать понты типа включи свой мозг.
The Revolution is Now!
hoza_syl вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Последнее значение в списке Maruff Microsoft Office Excel 13 16.02.2017 12:43
подскажите как поменять последнее значение на предпоследнее zander Microsoft Office Excel 2 29.09.2009 19:20
Последнее значение в столбце списка ALev Microsoft Office Excel 2 02.07.2009 16:29
Как выбрать последнее по списку значение? CaustiC Microsoft Office Excel 2 17.11.2008 09:03
Отобразить последнее введенное значение RUBEY Microsoft Office Excel 5 21.03.2007 11:01