Who is online html

Saved searches

Use saved searches to filter your results more quickly

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

License

Madhav-MKNC/who-is-online

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

Introducing a revolutionary new Chrome extension that brings the power of online collaboration to your fingertips! Currently under development. This extension will allow you to access real-time information about all users who are accessing the same webpage as you, from any location around the world. With the built-in chatroom feature, you’ll be able to interact with these users and exchange ideas, thoughts, and collaborate on projects in real-time.

Whether you’re a student, professional, or simply an avid internet user, this extension has the potential to revolutionize the way you browse the web. With the ability to connect with others and share experiences, you’ll never feel isolated in your online browsing experience again.

Stay tuned for the release of this innovative new Chrome extension. Get ready to take your online experience to the next level and start connecting with others across the world!

git clone git@github.com:Madhav-MKNC/who-is-online.git 

or you can download the zip file.

  • step 3: turn on the developer mode in top right corner
  • step 4: click the «load package» button and select the folder in which you cloned the project
  • step 5: after that «Who is Online» extension will be loaded in your chrome
  • step 6: pin the extension.
  • Now you are ready to go.
Читайте также:  Фильтрация по дате php

Источник

Реализация Кто онлайн

Реализация Кто онлайн

Наверняка, Вы часто видели на разных сайтах информацию о количестве online-пользователей, то есть пользователей, которые непосредственно находятся сейчас на сайте. Например, «Кто онлайн» часто добавляют на форумы, социальные сети, различные сервисы, причём даже пишут конкретные логины пользователей, находящихся на сайте. Я решил, что в этой статье разберу, как реализовать «Кто онлайн» на сайте.

Первым делом необходимо понять принцип работы «Кто онлайн». А принцип следующий: каждый пользователь, который не активен более заданного времени, выбывает из списка online. Каждый новый пользователь добавляется в список online. И этот список хранится в базе данных. Те, кто уже неплохо разбирается в PHP и MySQL, без проблем реализуют всё это. Однако, на всякий случай, распишу подробную инструкцию:

  1. Создать таблицу в базе данных со следующими полями:
    • id — уникальный идентификатор каждой записи.
    • user_id — уникальный идентификатор, соответствующий определённому пользователю. Другими словами, если у Вас есть регистрация, то в таблице с пользователями должен быть указан их id. Вот именно в это поле и необходимо помещать этот id.
    • last_time — количество секунд прошедших с полуночи 01.01.1970 до последней активности пользователя. Это количество секунд легко получается с помощью функции time().
  2. На каждой странице сайта, на каждом скрипте, необходимо реализовать следующий алгоритм:
    1. Получить информацию об активности пользователя, вызвавшего этот скрипт. Если этот пользователь находится в таблице, то надо просто обновить поле last_time у него. Если его там нет, то необходимо добавить этого пользователя в таблицу.
    2. Удалить всех online-пользователей из таблицы, у которых время неактивности превышает заданное, простым SQL-запросом.

    Всё, это весь алгоритм. Он, на самом деле, очень простой и самый частоиспользуемый. Что касается времени, через которое пользователь считается за offline, то здесь советую выбрать 30 минут. А сам принцип, надеюсь, стал понятен: каждый пользователь, который переходит на любую страницу сайта, вызывает добавление себя в список online (или обновление last_time, если он там уже был), а также удаление уже неактивных пользователей.

    Также вместо user_id можно использовать IP-адрес. Тогда можно реализовать, не сколько зарегистрированных пользователей, а сколько вообще людей находится на сайте.

    Я очень рекомендую реализовать этот алгоритм, даже если он Вам кажется совсем простым. А возникшие вопросы Вы можете задать в комментариях.

    Создано 15.07.2011 14:00:28

  3. Михаил Русаков
  4. Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

    Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
    Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

    Если Вы не хотите пропустить новые материалы на сайте,
    то Вы можете подписаться на обновления: Подписаться на обновления

    Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

    Порекомендуйте эту статью друзьям:

    Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

    1. Кнопка:
      Она выглядит вот так:
    2. Текстовая ссылка:
      Она выглядит вот так: Как создать свой сайт
    3. BB-код ссылки для форумов (например, можете поставить её в подписи):

    Комментарии ( 24 ):

    Насчет обновления поля last_time понятно — это делает сам пользователь, активничая на сайте. А вот кто вызовет команду удаления неактивных пользователей? Как запустить скрипт автоматом?

    Каждый пользователь не только обновляет себя, как активного, но он же и удаляет неактивных. Можно ещё написать отдельный скрипт и запустить его в cron на запуск через заданные интервалы. Результат будет тот же.

    А вот у меня столбец online находится в одной и том же столбике, что и вся инфа о юзере, в общем вот id login password avatar email activation date online Эта структура таблицы users, вот например в начале каждого php-шного файла у меня подключается такой код идентифицирующий пользователя который ввел свои данные и вошел под своими данными. if (isset($_COOKIE[‘auto’]) and isset($_COOKIE[‘login’]) and isset($_COOKIE[‘password’])) < if ($_COOKIE['auto'] == 'yes') < $_SESSION['password']=strrev(md5($_COOKIE['password']))."000000"; $_SESSION['login']=$_COOKIE['login']; $_SESSION['id']=$_COOKIE['id']; >> if (!empty($_SESSION[‘login’]) and !empty($_SESSION[‘password’])) < $login = $_SESSION['login']; $password = $_SESSION['password']; $result = mysql_query("SELECT id,avatar FROM users WHERE login='$login' AND password='$password' AND activation='1'",$db); $myrow = mysql_fetch_array($result); >А вот как мне вытащить данные например именно того пользователя на странице которого я сижу, то есть мне нужно написать запрос на отображение онлайн ли он или нет, когда я сижу под своими данными чтоб мне это видеть. Не могу понять как это сделать и все, думал сделать через while и do, но эта мысль отпала , поняв что этот способ не подойдет. Ох надеюсь вы прочтете мой бред и спасете меня в очередной раз=)

    Допустим, страница, на которой выводится информация называется user.php. Чтобы выводить информацию на страницу именно того пользователя, который требуется, нужно передать get-параметр. То есть в реальности ссылка на страницу будет user.php?id=17. При переходе по такому адресу выводится тот пользователь, чей >

    дело все в том что у меня стоит условие если вы находитесь на странице с то есть своим, то вам выводится одна информация, а если эта страница не ваша то вам выводится другая информация, все это происходит по сессионным логам.

    Где и как указать (прописать) это время — 30 минут

    Источник

    hpneo / README.md

    You have a group chat application, but who is online!?

    You want to show your users which of their friends are online and available to chat!

    Given an input of an array of objects containing usernames, status and time since last activity (in mins), create a function to work out who is online , offline and away .

    If someone is online but their lastActivity was more than 10 minutes ago they are to be considered away .

    The input data has the following structure:

    [ username: 'David', status: 'online', lastActivity: 10 >,  username: 'Lucy', status: 'offline', lastActivity: 22 >,  username: 'Bob', status: 'online', lastActivity: 104 >]

    The corresponding output should look as follows:

     online: ['David'], offline: ['Lucy'], away: ['Bob'] >

    If for example, no users are online the output should look as follows:

    username will always be a string , status will always be either ‘online’ or ‘offline’ and lastActivity will always be number >= 0 .

    Finally, if you have no friends in your chat application, the input will be an empty array [] . In this case you should return an empty object <> .

    This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters

    const whosOnline = ( friends ) =>
    // Your code here.
    >

    This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters

    def who_is_online ( friends )
    return
    end

    This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters

    describe ( ‘Given examples’ , ( ) =>
    var friends
    test ( ‘Example test one of each’ , ( ) =>
    friends = [
    username : ‘David’ ,
    status : ‘online’ ,
    lastActivity : 10
    > ,
    username : ‘Lucy’ ,
    status : ‘offline’ ,
    lastActivity : 22
    > ,
    username : ‘Bob’ ,
    status : ‘online’ ,
    lastActivity : 104
    > ]
    expect ( whosOnline ( friends ) ) . toEqual (
    online : [ ‘David’ ] ,
    offline : [ ‘Lucy’ ] ,
    away : [ ‘Bob’ ]
    > )
    > )
    test ( ‘Example test no one online’ , ( ) =>
    friends = [
    username : ‘Lucy’ ,
    status : ‘offline’ ,
    lastActivity : 22
    > ,
    username : ‘Bob’ ,
    status : ‘online’ ,
    lastActivity : 104
    > ]
    expect ( whosOnline ( friends ) ) . toEqual (
    offline : [ ‘Lucy’ ] ,
    away : [ ‘Bob’ ]
    > )
    > )
    > )

    This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters

    friends = [ < "username" =>«David» , «status» => «online» , «last_activity» => 10 > ,
    < "username" =>«Lucy» , «status» => «offline» , «last_activity» => 22 > ,
    < "username" =>«Bob» , «status» => «online» , «last_activity» => 104 > ]
    Test . assert_equals ( who_is_online ( friends ) , < "online" =>[ «David» ] , «offline» => [ «Lucy» ] , «away» => [ «Bob» ] > )
    friends = [ < "username" =>«Lucy» , «status» => «offline» , «last_activity» => 22 > ,
    < "username" =>«Bob» , «status» => «online» , «last_activity» => 104 > ]
    Test . assert_equals ( who_is_online ( friends ) , < "offline" =>[ «Lucy» ] , «away» => [ «Bob» ] > )

    Источник

Оцените статью