- Автор темы
- #1
Здравствуйте, делаю вебинарную комнату, мне необходимо видеть количество людей кто онлайн. Много примеров основаны на логике перезагрузки страницы, если пользователь не перезагружал 10 минут значит его уже нет на странице, естественно такой вариант не подходит.
Так вот вопрос, правильную я логику собираюсь использовать или нет. Для отслеживания посетителей использую ajax и когда страница открыта у пользователя каждый 10 секунд идет обращение к бд через php, в качестве идентификатора хочу использовать session_id() получается что пока открыта страница у пользователя будет постоянно идти запись в бд, заменяя данные времени, как только юзер закроет страницу данные идти перестают и система посчитает что его нет, верная ли логика или session_id() не является уникальным идетификатором и статистика будет неточной, пример части кода ниже:
Так вот вопрос, правильную я логику собираюсь использовать или нет. Для отслеживания посетителей использую ajax и когда страница открыта у пользователя каждый 10 секунд идет обращение к бд через php, в качестве идентификатора хочу использовать session_id() получается что пока открыта страница у пользователя будет постоянно идти запись в бд, заменяя данные времени, как только юзер закроет страницу данные идти перестают и система посчитает что его нет, верная ли логика или session_id() не является уникальным идетификатором и статистика будет неточной, пример части кода ниже:
Код:
<script>
function show()
{
$.ajax({
url: "ajax-cron.php",
type: 'post',
data: { webid: <?=$_GET['webid'];?>, user: <?=$_GET['user_id'];?>, ses_id: <?=session_id();?>},
cache: false,
success: function(response){
}
});
}
$(document).ready(function(){
show();
setInterval('show()',10000);
});
</script>