Реалізація хто онлайн
Відео: Структури даних: Реалізація черзі на розширюваному списку. Центр онлайн-навчання «Фоксфорд»
Напевно, Ви часто бачили на різних сайтах інформацію про кількість online-користувачів, тобто користувачів, які безпосередньо знаходяться зараз на сайті. Наприклад, "хто онлайн"Часто додають на форуми, соціальні мережі, різні сервіси, причому навіть пишуть конкретні логіни користувачів, що знаходяться на сайті. Я вирішив, що в цій статті розберу, як реалізувати "Хто онлайн" на сайті.
Насамперед необхідно зрозуміти принцип роботи "Хто онлайн". А принцип наступний: кожен користувач, який не активний більш заданого часу, вибуває зі списку online. Кожен новий користувач додається в список online. І цей список зберігається в базі даних. Ті, хто вже непогано розбирається в PHP і MySQL, без проблем реалізують все це. Однак, на всякий випадок, розпишу докладну інструкцію:
- Створити таблицю в базі даних з наступними полями:
- id - унікальний ідентифікатор кожного запису.
- user_id - унікальний ідентифікатор, відповідний певному користувачеві. Іншими словами, якщо у Вас є реєстрація, то в таблиці з користувачами повинен бути зазначений їх id. Ось саме в це поле і необхідно поміщати цей id.
- last_time - кількість секунд минули з опівночі 01.01.1970 до останньої активності користувача. Це кількість секунд легко виходить за допомогою функції time ().
- На кожній сторінці сайту, на кожному скрипті, необхідно реалізувати наступний алгоритм:
- Отримати інформацію про активність користувача, який викликав цей скрипт. якщо цей користувач знаходиться в таблиці, то треба просто оновити поле last_time у нього. якщо його там немає, то необхідно додати цього користувача в таблицю.
- видалити всіх online-користувачів з таблиці, у яких час неактивності перевищує ліміт, простим SQL-запитом.
Відео: Структури даних: Реалізація черзі на кільцевому списку. Центр онлайн-навчання «Фоксфорд»
Все, це весь алгоритм. Він, насправді, дуже простий і самий частоіспользуемих. Що стосується часу, через яке користувач вважається за offline, то тут раджу вибрати 30 хвилин. А сам принцип, сподіваюся, став зрозумілий: кожен користувач, який переходить на будь-яку сторінку сайту, викликає додавання себе в список online (Або оновлення last_time, якщо він там вже був), а також видалення вже неактивних користувачів.
також замість user_id можна використовувати IP-адреса. Тоді можна реалізувати, не скільки зареєстрованих користувачів, а скільки взагалі людей знаходиться на сайті.
Відео: Видеоурок 2 - підготовка до онлайн-програмі "РЕАЛІЗАЦІЯ з НАТХНЕННЯ"
Я дуже рекомендую реалізувати цей алгоритм, навіть якщо він Вам здається зовсім простим. А виникли питання Ви можете задати в коментарях.
В рунеті запущена онлайн-гра живими людьми
Фільми онлайн. Прем`єри
Ак барс online
Online-кінотеатр
Online tv
Anilab - аніме онлайн
Modern strike online
Blocky cars online
Ексклюзив: п`ять основ windows 7. Частина 2
Як обрізати відео онлайн за 40 секунд?
Як правильно створювати структуру бази даних
Як створити голосування на сайті
Як розпізнати текст онлайн з картинки?
Як зробити коментування на сайті
Як створити свій api на сайті
Як зробити реєстрацію та авторизацію користувачів на сайті
Як зробити сторінку користувача
Піаніно на клавіатурі
Реалізація пошуку на сайті через php
Driverpack solution online - автоматичний пошук і установка будь-яких драйверів
У office online можна буде спілкуватися за допомогою skype
Driverpack solution online - автоматичний пошук і установка будь-яких драйверів
Як зробити коментування на сайті
Фільми онлайн. Прем`єри
Як розпізнати текст онлайн з картинки?
Піаніно на клавіатурі
Як правильно створювати структуру бази даних
Як створити голосування на сайті
Помилка max user connections в mysql
Modern strike online
Як обрізати відео онлайн за 40 секунд?