Всё обо всём

Кто онлайн? (Как правильно?)

198 109
user avatar
Пользователь
На сайте 13 лет
Сообщений : 251
Репутация : 0
9 лет назад
Здравствуйте ребята программисты, заметьте мы не в матюкальне! :wink:

Вопрос именно таков: как правильно определить залогенного пользователя то есть онлайн (online)?

ПС: по IP не актуально!
user avatar
Пользователь
На сайте 15 лет
Сообщений : 858
Репутация : 0
9 лет назад
MARIOS, поставь корректнее вопрос
user avatar
Пользователь
На сайте 13 лет
Сообщений : 251
Репутация : 0
9 лет назад
Цитата: ByFlyMARIOS, поставь корректнее вопрос
Как определить кто онлайн? (залогеннин)
Юзер вошедший в аккаунт
user avatar
Пользователь
На сайте 15 лет
Сообщений : 858
Репутация : 0
9 лет назад
MARIOS, яндексировать пробовал?) в интернете куча скриптов и примеров готовых :smile:
user avatar
Пользователь
На сайте 13 лет
Сообщений : 251
Репутация : 0
9 лет назад
Цитата: ByFlyяндексировать пробовал?)
ну почти, я гуглю, примеры есть хотел узнать Вашу логику.
user avatar
Пользователь
На сайте 15 лет
Сообщений : 858
Репутация : 0
9 лет назад
MARIOS, я пока с этим не сталкивался, даже не думал, хотя есть смысл задуматься, ибо надо будет)

я не знаю как там происходит это всё, как-то при обновлении страницы передается запрос и записывается в бд, но думаю проще будет сделать массив из сессии или типа того и передавать туда логин юзера и страницу, на которой он, +ajax и js, крч надо подумать и спроектировать)
user avatar
Пользователь
На сайте 13 лет
Сообщений : 1859
Репутация : 0
9 лет назад
Цитата: MARIOSЗдравствуйте ребята программисты
привет )))

Цитата: MARIOSВопрос именно таков: как правильно определить залогенного пользователя то есть онлайн (online)?
В файле который работает на всех страницах, например шаблоне, записываешь в таблицку phpid и дату, затем нижу првоеряешь если дата меньше на 30 то делаешь делте запрос и удаляешь эту запись. В запись еще можешь сувать ид пользователя на сайте, таким образом можешь првоерять онлайн он или нет, ведь зашев на сайт в базу запишется его ид сесии, а при неактивности больше 30 сек оно удалится. Так что если он на сайте что то делает она не удалится и ты ее найдешь в базе по его ид
user avatar
Пользователь
На сайте 15 лет
Сообщений : 858
Репутация : 0
9 лет назад
Pretorian, ага, люди пытаются кэшировать записи, а ты тут толкаешь постоянный запрос в корень :facepalm:
подумай, что будет, если онлайн 10 тысяч пользователей? ну или хотя бы 1 тысячу пользователей.
user avatar
Пользователь
На сайте 13 лет
Сообщений : 1859
Репутация : 0
9 лет назад
Цитата: ByFlyага, люди пытаются кэшировать записи, а ты тут толкаешь постоянный запрос в корень
Вопервых начнем с того что автор ТС не просил показать ему кешированый вариант. Он спросил как можно. Я и показал как можно.
Вовторых ты если хочешь что то сказать, так скажи прямо, не нужно подсерать, перекручивая, это качество слабых.
Втретих, видео смотрел? Читал до конца? Что мне на твое мнение?

Цитата: ByFlyподумай, что будет, если онлайн 10 тысяч пользователей? ну или хотя бы 1 тысячу пользователей.
А вот мне интересно, а что будет? Давай подискутируем, что будет от 1 запроса, который выполняется 1 раз при входе, и 2 раз при выходе. Что будет?

P.S. У тебя в скрипте таких запросов штук 700 примерно, и ниче ))) тебе же можно, бо ты великий гГуру. :request:
user avatar
Пользователь
На сайте 15 лет
Сообщений : 858
Репутация : 0
9 лет назад
Ребята, после долгих споров, обсираловок и тд и тп.
ПРЕТОР считает себя норм проггером, не считает себя говнокодером и сует в корень sql запрос, который выполняется при каждом обновлении страницы.

Как вы считаете, он может что-то нормальное программировать?

Ну, не буду пустозвоном.
Я уверен, что нормальные программисты делают так: при входе на сайт единоразово пишут запрос sql в бд, для первой записи, в которой содержится текущее время time().
Для вывода используют запрос типа: $timedatabase+60(sec) > time() -> пользователь онлайн, иначе пользователь оффлайн.

Далее для обновление времени пользователя онлайн вешаем событие на click, допустим на ссылку или просто клик мыши, если был произведен клик мыши или переход по ссылке, то обновляем $timedatabase -> time()
Так же можно повесить событие js, допустим водишь мышкой, то тоже обновляем $timedatabase -> time(), но с вождением мыши тоже таймер надо ставить.

Выслушаю Ваши выводы, критику.

Цитата: PretorianА вот мне интересно, а что будет? Давай подискутируем, что будет от 1 запроса, который выполняется 1 раз при входе, и 2 раз при выходе. Что будет?

ты дурак или совсем? как он обновлять time() будет???
если ты пихаешь один запрос в бд при входе, и 2-ой при выходе, то о каком онлайне может быть идти речь?

Допустим пользователь вошел на сайт, записался его time()
Он ходит по сайту, 5мин, 10мин, 30мин, у тебя значит time() не обновляется???
так а смысл твоего онлайна??? :facepalm:
user avatar
Пользователь
На сайте 15 лет
Сообщений : 663
Репутация : 0
9 лет назад
Самое элементарное - яваскрипт повесь на сторону юзера с таймаутом 30 секунд и запрос отправляй на спец файл им.
user avatar
Пользователь
На сайте 15 лет
Сообщений : 858
Репутация : 0
9 лет назад
Цитата: steamСамое элементарное - яваскрипт повесь на сторону юзера с таймаутом 30 секунд и запрос отправляй на спец файл им.

Хорошая идея *cool*
user avatar
Пользователь
На сайте 13 лет
Сообщений : 1859
Репутация : 0
9 лет назад
Цитата: ByFly как он обновлять time() будет???
ну например так как у меня в 5 скрипте сделано даун. Програмирование это инструмент разума, он дает тебе свободу действий, как он обновлять будет это уже вопрос к программисту а не к языку или платформе.

Цитата: ByFlyХорошая идея *cool*
не очень так как яваскрипт работает на стороне клиента Я бы не доверял запись в файл всем кому попало и возможность менять алгоритм. С этим должен работать серверный язык.
user avatar
Пользователь
На сайте 15 лет
Сообщений : 858
Репутация : 0
9 лет назад
Pretorian, ты сути как всегда не понял, нормальные проекты делают break; то есть если постоянный запрос или запрос при обновлении страницы, он должен кэшироваться, ибо при большом онлайне я уверен, будет перегрузка
user avatar
Пользователь
На сайте 13 лет
Сообщений : 1859
Репутация : 0
9 лет назад
Цитата: ByFlyнормальные проекты делают break;
а у тебя как сделано на буксе? :bully:
user avatar
Пользователь
На сайте 15 лет
Сообщений : 858
Репутация : 0
9 лет назад
Pretorian, претор, тебе до этого еще далеко))) во первых, почти все мои запросы вызываются функциями, а не постоянное их подключение.
Далее, я еще не делал, но позже сделаю кэширование тех функций, которые постоянно вызываются.
Далее, я во всю использую session, зачем мне допустим тянуть имя пользователя, логин или пароль из бд? Можно это внести в сессию.

Претор, покажи какой ты используешь код, чтобы проверить авторизирован ли пользователь и если нет, то закрыть доступ к странице.
user avatar
Пользователь
На сайте 15 лет
Сообщений : 663
Репутация : 0
9 лет назад
Цитата: Pretorianне очень так как яваскрипт работает на стороне клиента Я бы не доверял запись в файл всем кому попало и возможность менять алгоритм. С этим должен работать серверный язык.
Кто сказал что надо писать что то? можно сессию слать или id какой нибудь и всё. По айпи определять.
user avatar
Пользователь
На сайте 13 лет
Сообщений : 1859
Репутация : 0
9 лет назад
Цитата: ByFly, претор, тебе до этого еще далеко)))
я видел какое далеко, взял скрипт мой который я из за неудачной сборки выкинул в паблик, поменял пару картинок, убрал пару кнопок и разделов, добавил пару джикевери кнопочек с интернета, и ходишь пиздишь какой ты прокодер, блять ну ты же сам себя не обманишь? Как ты спать ложишся с такими поступками?
user avatar
Пользователь
На сайте 15 лет
Сообщений : 858
Репутация : 0
9 лет назад
Pretorian, ахаха, сука, ахахаха, а ты до этого не додумался, написать кучу функционала, прикрепить jquery, ajax, js и прочее :facepalm:

Pretorian, один хуй кого я блядь слушать? не пиши мне больше!
пиши дальше в своём говнокоде всякие глобальные sql запросы, которые нагружают сервак, да и вообще спроектированы через жопу :lol:
user avatar
Пользователь
На сайте 13 лет
Сообщений : 1859
Репутация : 0
9 лет назад
Цитата: ByFlyPretorian, один хуй кого я блядь слушать? не пиши мне больше!
пиши дальше в своём говнокоде всякие глобальные sql запросы, которые нагружают сервак, да и вообще спроектированы через жопу :lol:
окай, покрайне мере если меня кто то спросит "а что ты сделал" я ему дам ссылку на свой 5 скрипт. Имхо. Что даш ты? Пустословие?...
Автор темы
author avatar
MARIOS
Пользователь
На сайте 13 лет
Сообщений 251
Тем 24
Репутация 0
Теги темы
Автор не добавил тегов для этой темы
Ответить
Написал(а):