Статус Online/Offline на PHP


Статус Online/Offline на PHP

3158
5.4 из 10
Проголосовало: 21





Сколько искал скрипт Online/Offline для PHP, ни разу не видел.. Вот решил поделиться своим. Скрипт написан лично мною..
Создаем файл userstatus.php и кидаем туда:
Код
<?php
session_start();
include ("bd.php");

$today = date("U");
$totime = date("H:i:s",time()+3*3600);
$olddate = date("d.m.Y");
$id = $_SESSION['id'];
$timeold = mysql_query("UPDATE usersinfo SET lastdate='$today' WHERE id='$id'");
$timeout = mysql_query("UPDATE usersinfo SET lasttime='$totime' WHERE id='$id'");
$olddatee = mysql_query("UPDATE usersinfo SET olddate='$olddate' WHERE id='$id'");
?>

include ("bd.php"); - ваше подключение к Базе Данных.
$_SESSION['id']; - получаем таким образом: $_SESSION['id']="Оператор который впишет ID пользователя";

Этот код ставим на те страницы где вы хотите что бы через указанное количество времени обновлялась информация о том онлайн ли пользователь:
Код
<script>
object = {
func: function() {
$.get("/userstatus.php");
function onAjaxSuccess(data)
{
} }
}
setInterval( object.func , 20000)
</script>

setInterval( object.func , 20000) - эта строка указывает интервал с которым будет отправляться запрос. (20000 = 20 секунд).

Вот этот код в то место где будет показывать онлайн ли сейчас пользователь:
Код
<?php
$id = $_SESSION['id'];
$userinfo = mysql_query("SELECT lastdate FROM `usersinfo` WHERE id='$id'");
$userinfodat = mysql_fetch_array($userinfo);

$today = date("U");
if($userinfodat['lastdate'] + 100 < $today) {
echo "<div class='offlineStatus'></div>";
} else {
echo "<div class='onlineStatus'></div>";
};
?>

$userinfodat['lastdate'] + 100 < $today - это означает что если последнее время которое было записано в бд + 100 секунд меньше чем нынешнее время, то помечаем что пользователь Оффлайн.

Это добавляем в ваш CSS:
Код
.onlineStatus {background:#4dbd21;width:10px;height:10px;border-radius:5px;}
.offlineStatus {background:#ff0700;width:10px;height:10px;border-radius:5px;}


Настраиваем phpMyAdmin:
Создаем таблицу с названием usersinfo и создаем такие поля с такими же параметрами как на скрине:

Автор скрипта BlackPh.. При копировании указывайте автора!
Автор публикации: Загрузка
Загрузка
BlackPh, это его n материал
  • Всего комментариев: 6

BlackPh
0
BlackPh написал: Написано 23 мая 2013 в 01:36
Комментарий №6
Как писал скрипт, изначально сделал так как ты написал..
Но он у меня почему то не работал. Я перерыл весь скрипт а потом решил сделать по отдельности эти запросы. И он заработал. Вот почему я выложил именно в таком виде.

BlackPh
0
BlackPh написал: Написано 22 мая 2013 в 23:14
Комментарий №5
Забыл..
$userinfodat['today']; - Выводит дату последнего входа.
$userinfodat['totime']; - Выводит время последнего входа.
Пример вывода данных: echo "$userinfodat[today] в $userinfodat[totime]";

OkiMoTo
0
OkiMoTo написал: Написано 22 мая 2013 в 20:48
Комментарий №2
Как это относиться к ucozy то?)

Goodmind
+2
Goodmind написал: Написано 22 мая 2013 в 21:11
Комментарий №3
У админа просто нет других категорий, зациклился он на юкозе biggrin

BlackPh
0
BlackPh написал: Написано 22 мая 2013 в 23:02
Комментарий №4
Покупаешь PHP и на все 100% относиться.. wacko

alex0005
-4
alex0005 написал: Написано 22 мая 2013 в 19:50
Комментарий №1
Смысл? Я вижу, что вы его тоже не видите :3

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 24
Скрипты и модификации для Ucoz 2101
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 429
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
Поставил ваш код он начинает считать от 0 до 100 и останавливаеться. я думал он будет в случайном порядке показывать цыфры
как поставить свою ссылку и логотип
  • Сатурн-1 написал:
  • Похвально.
  • Winston888 написал:
  • Я не говорил что делаю только скрипты. Я делаю шаблоны, скрипты, адаптации с разных движков под ucoz и на оборот + я ещё и сам рисую. В данный момент занимаюсь дизайном для webo4ka сам рисую сам верстаю.
  • Сатурн-1 написал:
  • Заметь, мы делаем почти одну и ту же работу.
    Ты - скрипты, я -шаблон. И каждый делает это бесплатно, НО
    ты делаешь скрипты без шаблона, я делаю шаблон без скриптов (не считая основных).
    Я тоже могу сказать что твои скрипты не идеальны, но не буду т.к. даже не знаю какие из всех существующих твои.
    Поэтому ты не сравнивай скрипты и шаблоны да еще и на Ucoz'e, мы же не на хакатоне каком нибудь.
    Последние темы
    Опрос
    205
    А
    Р
    Что произойдёт: $("#...
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 4
    Гостей: 4
    Пользователей: 0
    0
    Сегодня были
    Топ пользователей: