Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2010, 08:29   #1
bag
Пользователь
 
Регистрация: 20.06.2008
Сообщений: 95
По умолчанию Счетчик онлайн-посетителей сайта

Здравствуйте! Хочу добавить на свой сайт немного статистики, а именно, счетчики общего количества посещений сайта, посещений за день и количества пользователей, находящихся на сайте в даный момент (онлайн).
С первыми двумя счетчиками особых проблем не вижу. А вот как реализовать счетчик онлайн-посетителей пока не знаю. Можно конечно фиксировать активность пользователей при переходе по ссылкам сайта, но хочется другим способом: когда пользователь открывает страницу сайта, то ему присваивается индивидуальный номер N и увеличивается счетчик онлайн-посетителей. При закрытии страницы должен выполниться java-скрипт, который отправляет информацию на сервер о том, что пользователь с номером N закрыл страницу и счетчик уменьшается. Смысл технологии отправки данных на сервер с помощью java-скрипта более-менее понимаю. Проблемма в том, КАК ОРГАНИЗОВАТЬ ВЫЗОВ Java-ФУНКЦИИ ПРИ ЗАКРЫТИИ СТРАНИЦЫ?
Не забывайте оставлять отзывы (кнопочка в левом нижнем углу сообщения)
bag вне форума Ответить с цитированием
Старый 18.05.2010, 11:25   #2
Z1000000
Форумчанин
 
Регистрация: 04.05.2010
Сообщений: 495
По умолчанию

нет такого понятия в web , как закрытие страницы.
Как вариант. На все ссылки на твоей странице вешать активацию скрипта-закрытие.
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948
Z1000000 вне форума Ответить с цитированием
Старый 18.05.2010, 18:49   #3
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Всё это делается через собственный механизм сессий. Смотрите в этом направлении.
Виталий Желтяков вне форума Ответить с цитированием
Старый 29.10.2014, 19:07   #4
dmxp
Новичок
Джуниор
 
Регистрация: 29.10.2014
Сообщений: 1
По умолчанию

Нужно копать в сторону сессий с ограничением жизни сессии.
Создаёте файл counter.php
Код:
<?php
 session_start();
 $id = session_id();
 if ($id!="")
 {
  $CurrentTime = time();
  $LastTime = time() - 600; // время жизни сессии в секундах
  $base = "session/counter.txt"; // путь к файлу сессии (с правом на запись)

  $file = file($base);
  $k = 0;
 
  for ($i = 0; $i < sizeof($file); $i++) {
   $line = explode("|", $file[$i]);
    if ($line[1] > $LastTime) {
    $ResFile[$k] = $file[$i];
    $k++;
   }
  }
  for ($i = 0; $i<sizeof($ResFile); $i++) {
   $line = explode("|", $ResFile[$i]);
   if ($line[0]==$id) {
       $line[1] = trim($CurrentTime)."\n";
       $is_sid_in_file = 1;
   }
   $line = implode("|", $line); $ResFile[$i] = $line;
  }
  $fp = fopen($base, "w");
  for ($i = 0; $i<sizeof($ResFile); $i++) { fputs($fp, $ResFile[$i]); }
  fclose($fp);
  if (!$is_sid_in_file) {
   $fp = fopen($base, "a-");
   $line = $id."|".$CurrentTime."\n";
   fputs($fp, $line);
   fclose($fp);
  }
 }
echo "онлайн: <b>".sizeof(file($base))."</b>";
 ?>
Чтобы счётчик обновлялся в режиме онлайн, подключаем файл с помощью JS

Код:
<script type="text/javascript" src="/js/jquery.min.js"></script>
<div id = 'counter'></div>
<script>
var loadtime = 60000; // время обновления 1 минута
function mail(){
$.ajax({
type: "POST",
url: "/onlinetv/counters/inter_c.php",
data: {load: '1'},
success: function(msg){
document.getElementById('counter').innerHTML = msg;
}
});
setTimeout(mail, loadtime);
};
mail();
</script>
Пример работы можно увидеть на http://usetv.pp.ua/onlinetv/inter.php
dmxp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ОC посетителей форума и наших сайтов. Alar Операционные системы общие вопросы 33 31.10.2012 01:22
Уделяет кто нибудь из посетителей особое место безопасности vasek123 Свободное общение 42 28.02.2009 22:23
Счетчик посещений сайта Владимирx JavaScript, Ajax 1 27.12.2007 16:54