Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Помогите с модулем online\offline
Покинул форум
Сообщений всего: 182
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
Дело вот такое!
Нужен скрипт который показует кто онлайн (пользиватели чата) а кто оффлайн!
Пожалуйста помогите, спец. тему создал! Надеюсь на помощь! Вдруг и я когда нить пригожусь
EuGen
Отправлено: 21 Января, 2008 - 18:18:38
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Основная проблема, связанная с этим - то, что нет постоянного соединения с сервером у клиентов. Пользователь зашел - сервер отдал ему содержимое страницы - и забыл. И что там дальше пользователь делает, нам неизвестно. Может, он онлайн и спит за монитором .. а может, закрыл себе страницу и все.
Потому классическим решением является высчитывание разницы в секундах/минутах/часах (и т.п.) между текущим временем и действием конкретного пользователя.
Для БД это выглядит примерно так:
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Ну тогда очевидно, что у Вас хранится недостаточное число информации. Нужно как минимум добавить еще last_online - дата или таймштамп, когда пользователь был в последний раз. Вам, я думаю, удобнее использовать таймштамп в третьей колонке. Тогда это будет:
Покинул форум
Сообщений всего: 182
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
делао имено в том!
Спасибо !
только не в этом основа проблемы!
Вот алгоритм входа пользивателей в чат:
Пользиватель при вводе логина и пароля должен быть зарегестрирован с мини анкетой, и при в ходе в чат его логин засыпаетса в куки. После забивания куков автоматически обробатываетса скрипт который заносит в userlist.txt логин пользивателя, (userlist.txt это база кто онлайн)! А вот как зделать что бы удалялась строка с этой бази когда он не отвичает $OFFLINE=60; я непойму, или могзгов нехватает или просто опыта!
EuGen
Отправлено: 22 Января, 2008 - 09:50:54
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Да, я что-то не поставил ';', бывает.
Ну, если предполагать, что у Вас те, кто онлайн, в другом файле, и этот файл не большой, то можно и так:
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.