Аналитика посещения сайта на JS 
		
		
		
		Уважаемые знатоки JavaScript! 
	Есть задача: получить информацию о посетителе странички сайта (как это делает допустим счетчик liveInternet), а именно - как долго провел времени посетитель на этой странице с момента его захода, до закрытия сайта. Буду Вам очень благодарен за пример ее решения!  | 
	
		
  | 
	
		
 А если система планируется высоконагруженная? не посылает же скрипт liveinternet каждые 10 секунд запрос на сервер. 
	есть ли еще какие-нибудь решения?  | 
	
		
 тогда так: 
	при входе на страницу засечь время. при выходе отправлять запрос с истекшим временем. на сервере время будет складываться.  | 
	
		
 Цитата: 
	
 А как засечь, что юзер покинул определенный сайт, а не страницу?:)  | 
	
		
 Цитата: 
	
 Вариант довольно громоздкий, но пока в голове вертится только он. Каждое новое открывание страницы засекает время и отправляет "я открылся", на что сервер создает отдельного смотрителя(watcher по-аглицки) и отвечает каким-нибудь идентификатором (watcher-ID) для новоиспеченного вотчера. Затем при закрытии страницы будет отправляться "я закрылся спустя <столько-то>, слышишь вотчер-ИДэ?". И соответствующий вотчер зафиксирует значение времени. Таким образом на сервере будет целая гора вотчеров, у каждого из которых будет хранится свое собственное значение времени. Складывать итоговое время придется с учетом накладок вотчеров, ведь некоторые будут созданы, пока другие еще не зафиксированы, тут просто нужно запоминать время создания и фиксации вотчеров на сервере. Ну и "покидание" сайта обязательно отразится на сессии. Так что в завершающей функции нужно проконтролировать вотчеры: "убить" незавершенные(будут ли?), правильно рассчитать, что-нибудь еще. Вот, как бы, пример подсчёта. Детализировать его - Ваша задача. P.S. :) Заинтересован в ознакомлении с рабочей версией.  | 
	
		
 Цитата: 
	
 на это нельзя повесить событие сессия при этом не закрывается! убивается куки сессии(при стандартных настройках PHP к примеру), но сама сессия еще достаточно долго может прожить(опять-таки зависит от настроек)  | 
	
		
 Цитата: 
	
  | 
	
		
 Цитата: 
	
 И вот метод вычисления на сервере будет направлен на уменьшение погрешности, а не js. Для js важно только отправлять все вовремя. ( load unload )  | 
	
		
 во-первых, есть еще нюанс, что пользователь может находиться на странице дольше, чем продолжительность сессии (т.е. все-таки ajax-запросы нужно посылать изредка). Можно посылать запросы "раз в сессию", если не пришел запрос - сессия была неадекватно закрыта 
	во-вторых, то, что пользователь не закрыл страницу не значит, что он ее просматривает  | 
| Часовой пояс GMT +3, время: 18:25. |