авторизация
авторизация
Здравствуйте, интересует такой вопрос а как определять человек на сайте или нет. Хочу сделать чтобы когда человек авторизовался на сайте, около его авки писало онлайн и все видели что он онлайн. И подскажите есть ли какой хороший компонент для авторизации пользователей на сайте через соц сети
Re: авторизация
Записывать/обновлять текущее время перед выводом. Если время последнего обновления больше текущего времени минус 5 минут, значит на сайте
Re: авторизация
интересует ещё чтобы ajax было, чтобы как в вк. т.е пользователь вышел с сайта и он сразу же пропадает online.
Re: авторизация
Ну добавьте Ajax-вызов в setTimeout(...) в JavaScript каждые несколько секунд, который будет дёргать любой экшен.
Re: авторизация
в вк работают сокеты. подобные обновления делаются методом push - сервер пинает страницу, а не страница опрашивает сервер.ElisDN писал(а):Ну добавьте Ajax-вызов в setTimeout(...) в JavaScript каждые несколько секунд, который будет дёргать любой экшен.
предложенный вами метод называется polling. является ущербным в виду большой нагрузки на сервер изза частых запросов.
Re: авторизация
В действии логаута обновить время посещения скажем на 0, и при закрытии вкладки отправлять аяксом запрос и обновлять запись. Вариантов кучаbakhur писал(а):интересует ещё чтобы ajax было, чтобы как в вк. т.е пользователь вышел с сайта и он сразу же пропадает online.
Re: авторизация
Тогда давайте посоветуем прикрутить сокетыDemon_id писал(а):в вк работают сокеты. подобные обновления делаются методом push - сервер пинает страницу, а не страница опрашивает сервер.
Re: авторизация
Задача тривиальна и не требует высокой точности. Достаточно при обновлении любой страницы (или любом аякс запросе) пользователем писать время в его запись. Считать что пользователь ушел если с момента временной метки прошло N минут, к примеру 5.ElisDN писал(а):Тогда давайте посоветуем прикрутить сокетыDemon_id писал(а):в вк работают сокеты. подобные обновления делаются методом push - сервер пинает страницу, а не страница опрашивает сервер.
Да, возможно пользователь залип в статью и читает её ничего не перезагружая, но это уже другая история, решений которой тоже масса. Да хоть бы по движению мышки или любому другому жс событию от пользователя отправлять аякс на обновление флага онлайн. только при этом в куку (либо либой другой локал сторидж) время, по которому ограничить отправкк аякса по подобным событиям хотябы раз в минуту.
вобщем способов масса, я на ходу могу их выдумывать. но дёргать аяксом сервер каждые 10 сек это уже перебор.