За последние 24 часа нас посетили 17420 программистов и 1608 роботов. Сейчас ищут 960 программистов ...

Функция "сейчас на сайте"

Тема в разделе "PHP для новичков", создана пользователем ekip, 20 окт 2010.

  1. ekip

    ekip Активный пользователь

    С нами с:
    11 авг 2009
    Сообщения:
    118
    Симпатии:
    0
    Ребята подскажите по какому принципу реализуется функция
    "сейчас на сайте" т.е. так что бы показывало онлайн или оффлайн в данный момент пользователь?
     
  2. Ensiferum

    Ensiferum Активный пользователь

    С нами с:
    11 июл 2010
    Сообщения:
    1.292
    Симпатии:
    0
    Адрес:
    из секты поклонников Нео
    было уже. в поиск.
     
  3. Hotei

    Hotei Активный пользователь

    С нами с:
    18 окт 2010
    Сообщения:
    11
    Симпатии:
    0
    Адрес:
    Украина
    Пишешь логи, а потом выбираешь количество уникальных, за интервал -5 минут или как решишь
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    можно замутить с аяксом
     
  5. siiXth

    siiXth Активный пользователь

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    А можно при каждом обновлении в странице клиентом делать апдейт бд в его профиле lastdate например на текущее время :)D), а потом селектить всех по lastdate с разницей в 300 к примеру.
    з.ы. ага , я беспощаден :D
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    siiXth
    спасибо, кэп!
     
  7. siiXth

    siiXth Активный пользователь

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    тоесть так и надо было ?
    головой не бились ненароком ? дважды :D
     
  8. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    Мне кажется, смотреть последнее обновлении сессии - самый лучший вариант :) Наверно потому, что php я начал изучать с phpbb...
     
  9. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    sobachnik
    в каком смысле "последнее обновление сессии"? о_О
     
  10. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
  11. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    sobachnik
    Это что? Создать БД и в нее писать? Это то о чем говорили Hotei и siiXth? =)
     
  12. siiXth

    siiXth Активный пользователь

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    ну не , это неадекватный метод =)
    нелюблю я апдейтить бд просто так , уже доапдейтился :D
     
  13. Riddick

    Riddick Активный пользователь

    С нами с:
    13 июн 2008
    Сообщения:
    80
    Симпатии:
    0
    Адрес:
    Россия
    Почему не адекватный? Можно так сделать в принципе, индексы расставить и кэшировать
     
  14. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    siiXth
    Сессия хранится в файле и на его открытие-закрытие тратятся ресурсы вполне сравнимые например с mysql соединением
    Так что сессии в базе - очень даже неплохой вариант
     
  15. siiXth

    siiXth Активный пользователь

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    оу , неужели я насколько креативен ? :D
    ляпаем куку с ластдейтом , проверяем прошло ли требуемое кол-во секунд , если да - апдейт
    привет!
    ну и на вывод можно накреативить
    короче 100500 способов
     
  16. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    это понятно, я больше к словам
    В базе можно много разного о юзвере хранить, всё в куки не запихаешь)))
     
  17. siiXth

    siiXth Активный пользователь

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    ну прочитай мой первый пост - такой точно способ "при каждом обновлении в странице" явно неадекватный :D[/quote]
     
  18. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    siiXth
    при каждом, при каждом.
    при чем не обновление, а новая запись. Кто, куда, куери (и даже возможно пост), откуда и во сколько.
    такие вещи как агент, айпи, поисковый запрос - можно записывать однажды при создании сесси, а вот активность надо писать каждый раз когда таковая активность проявлена.

    так что верной дорогой... ну вы знаете =)
     
  19. siiXth

    siiXth Активный пользователь

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    при каждом обновлении страницы происходит новая запись - теперь понятно что я желал донести ? :D
    блин из-за йухни тут уже столько букавок накатали , пошёл делать песенки
     
  20. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    не, ты не прав. кука с ластдейтом нафик не всралась. Есть идентификатор сессии и от него пляшут.
    и 100500 способов - наивная надежда. Способ один - писать, писать, писать активность юзверей =)
     
  21. siiXth

    siiXth Активный пользователь

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    кароче вот вам способ
    делаем кнопку "Я Онлайн" и при онклике делаем апдейт :D
     
  22. ekip

    ekip Активный пользователь

    С нами с:
    11 авг 2009
    Сообщения:
    118
    Симпатии:
    0
    Т.е я так понял отдельную табличку и туда писать юрез такой то залогинелся, юзер такой то отпостился, юзер такой то залез в лк и ко всем привязывать дату, брать интервал к примеру если с момента последней записи (дата и время) прошло 5 мин и юзер больше не делал никаких "движений", значит юзер не активен т.е. в офлайне, что то вроде лога активности юзеров.
    Ну а если юзеров будет много и все будут частенько постить в течении года?
     
  23. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ekip
    Ну а если юзеров будет много и все будут частенько постить в течении года?
    Дык, радоваться надо! :D
     
  24. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    +100500

    у меня тоже все по пхп сешн айди работает
     
  25. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2