<?php
if($_COOKIE['login'] == ''){} else {
// Начинаем сессию
// Получаем уникальный id сессии
$id_session = session_id();
$ip_new_user = $_COOKIE['login'];
// Устанавливаем соединение с базой данных
// Проверяем, присутствует ли такой id в базе данных
$query = "SELECT * FROM session_user WHERE id_session = '$id_session'";
$ses = mysql_query($query);
if(!$ses) exit("<p>Ошибка в запросе к таблице сессий</p>");
// Если сессия с таким номером уже существует,
// значит пользователь online - обновляем время его
// последнего посещения
if(mysql_num_rows($ses)>0)
{
$query = "UPDATE session_user SET putdate = NOW(), user = '$ip_new_user' WHERE id_session = '$id_session'";
mysql_query($query);
}
// Иначе, если такого номера нет - посетитель только что
// вошёл - помещаем в таблицу нового посетителя
else
{
$query = "INSERT INTO session_user VALUES('$id_session', NOW(), '$ip_new_user')";
if(!mysql_query($query))
{
echo $query."<br>";
echo "<p>Ошибка при добавлении пользователя</p>";
exit();
}
}
}
// Будем считать, что пользователи, которые отсутствовали
// в течении 20 минут - покинули ресурс - удаляем их
// id_session из базы данных
$query = "DELETE FROM session_user WHERE putdate < NOW() - INTERVAL '20' MINUTE";
mysql_query($query);
$q = "DELETE FROM session_chat WHERE putdate < NOW() - INTERVAL '5' MINUTE";
mysql_query($q);
?>