За последние 24 часа нас посетили 23676 программистов и 1599 роботов. Сейчас ищет 821 программист ...

Отслеживание онлайна

Тема в разделе "PHP для новичков", создана пользователем machetero, 4 сен 2016.

  1. machetero

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

    С нами с:
    25 окт 2014
    Сообщения:
    499
    Симпатии:
    21
    Как можно определить открыт ли сайт в браузере, у vk же как то отображается, если ты онлайн ? И второй вопрос - как сделать, чтобы было видно, что человек набирает текст(опять же как в vk) ? Там наверно на поле ввода событие срабатывает, а вот как и что скрипт отправляет, я не догадался.
     
  2. machetero

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

    С нами с:
    25 окт 2014
    Сообщения:
    499
    Симпатии:
    21
    тут на форуме тоже такое есть
     
  3. denis01

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

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    websockets самый быстрый вариант, сейчас много новых браузеров его поддерживает, можно установить Socket.IO
    чтобы знать пользователь в сети или нет, можно в redis писать его последнюю активность, и раз в 10 минут всех удалять, у кого активности не было больше 10 минут
    на счёт информирования то websockets от одного клиенты посылает на сервер информацию, а уже сервер отправляет другому, что тот начал печатать
     
    Anhk и machetero нравится это.
  4. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    centrifugo
     
    Anhk нравится это.
  5. machetero

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

    С нами с:
    25 окт 2014
    Сообщения:
    499
    Симпатии:
    21
    Я почитал про вебсокетс и так понял - это изменённый хттп. Типа tcp соединение открывается один раз и потом удерживается . Непонятно только как будет работать пхп машина, потому что она то с запросами работает, пришёл запрос - запускаем пхп, пхп отрабатывет, умирает, и ждёт нового запроса.
     
  6. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    угу. поэтому на пхп никто этого и не делает.
     
  7. machetero

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

    С нами с:
    25 окт 2014
    Сообщения:
    499
    Симпатии:
    21
    тупанул . сервер будет запускать пхп когда будет приходить GET или POST, также как он это раньше делал. меня сбило с толку что websockets называют асинхронным протоколом.
     
  8. mkramer

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

    С нами с:
    20 июн 2012
    Сообщения:
    8.598
    Симпатии:
    1.764
    Ну можно написать и сервер веб-сокетов на php, и запустить его на сервере
     
  9. Anhk

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

    С нами с:
    13 дек 2015
    Сообщения:
    219
    Симпатии:
    11
  10. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
  11. mkramer

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

    С нами с:
    20 июн 2012
    Сообщения:
    8.598
    Симпатии:
    1.764
    Теоретически можно. Но у меня как-то была ситуация, когда ajax-запрос на onunload не отрабатывал
     
  12. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    запрос не отправлялся или он отправлялся но не выполнялся?
     
  13. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    @machetero
    На пхп это делать дикий головняк. Пхп блокирующий. Пхп текущий памятью и тп. Центрифуга простая и удобная.
     
  14. mkramer

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

    С нами с:
    20 июн 2012
    Сообщения:
    8.598
    Симпатии:
    1.764
    Срабатывал раз через два. Серверную часть отдельно проверял - там всё ОК было.
     
  15. machetero

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

    С нами с:
    25 окт 2014
    Сообщения:
    499
    Симпатии:
    21
    смотри. я щас подумал. вообщем открывает чел страницу vk, js-скрипт соединяется с сервером(ещё отправляя куку авторизации) по протоколу websockets, и сервер знает, что с только что пришедшей кукой и ip-адресом, с которого она пришла, есть чувак. дальше серверный скрипт просто ждёт пока для этой куки не останеться tcp-соединений. не осталось - значит нет ни одного js-скрипта, а это значит все страницы закрыты. как-то так.
    Единственное, что мне интересно, дак это на каких языках пишут серверную часть для такого. И как работают интерпретаторы для такого.
    --- Добавлено ---
    ну тут типа я предположил что websockets соединения рвуться если открывший их js-скрипт закрывается
     
  16. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    на любых не блокирующих многопоточных долгоиграющих языках.
     
    denis01 нравится это.