Forum Webscript.Ru

Программирование => PHP => Тема начата: Perforator от 31 Марта 2002, 23:47:12

Название: Как узнать, что юзер покинул сайт ?
Отправлено: Perforator от 31 Марта 2002, 23:47:12
т.е. закрыл окно браузера или ушел на другой адрес.
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Dm от 01 Апреля 2002, 00:02:53
с помощью php - имхо, нельзя.
возможно, с помощью js или таймаутов сессий.
Название: Как узнать, что юзер покинул сайт ?
Отправлено: mvc_aaa от 01 Апреля 2002, 02:44:44
По таймаутам сессий очень приблизительно(как раз это с помощью пхп)..

Точно только жабой.
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Dm от 01 Апреля 2002, 03:42:03
сессии - это очевидно, что на php.

смысл, вообще, только в этом?
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Metaller от 01 Апреля 2002, 11:18:10
Вообще-то можно.... я как-то придумывал механизм - но он неоправданно жрет ресурсы.

идея такая...

при открытии сессии записываем ы базу время и путь к сессионному тмп-файлу.
Каждую минуту кроном запускаем скрипт, который проверяет базу на наличие записей без времени окончания и смотрит, существует ли файл, указанный в этой записи. Если нет - то записываем текущее время, как время окончания...
Погрешность в пару минут может быть......

Но это должны быть жуткие тормоза.....
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Oak от 01 Апреля 2002, 11:55:36
Еще можно не разрывать соединения - как в чатаз делают.
Example:

 http://fantastic.death.kiev.ua
Название: мррррк)
Отправлено: flymio от 01 Апреля 2002, 12:48:39
можно с помощью  js + (php, perl, anything) + какой нибудь фрейм.

в заголовке


Название: Как узнать, что юзер покинул сайт ?
Отправлено: от 01 Апреля 2002, 14:07:52
объясните необразованному что такое сессии и как с ними работать?HELP ME
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Oak от 01 Апреля 2002, 14:14:44
http://www.citforum.ru  - и читай
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Britva от 01 Апреля 2002, 14:46:07
http://php.spb.ru/php/session.html
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Макс от 01 Апреля 2002, 17:19:56
Perforator
Как вариант посмотри, что написано здесь (http://forums.webscript.ru/showthread.php?s=&postid=29576#post29576) и вместо onload напиши onunload и скрипт по своему перепиши, только header(); оставь как был и SID куда-то впихнуть нужно.

Правда что делать с попыткой refresha страницы мне пока в голову ничего реального не приходит
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Perforator от 01 Апреля 2002, 20:02:28
в httpd.conf апача есть такая строчка:

#LoadModule usertrack_module modules/ApacheModuleUserTrack.dll

может его можно как то использовать ?
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Antoxa от 01 Апреля 2002, 20:56:14
есть такое событие в js onUnLoad называется, за точность регистра не поручусь, но называется точно так...

ну и на это событие вешаем вызов какого-нить скриптика, который делает нужные вещи
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Oak от 01 Апреля 2002, 21:06:00
1. onUnLoad - IE only.
2. Не всегда работает (например когда модем связь оборвал :)

Да и вообще - сама идея узнать "на сайте ли user" довольно глупа с технической точки зрения. Посему такие извращения и требуются для ее реализации. Пользователи не "сидят на сайте" , а "качают с сайта файлики". Скачал HTML-ку с картинками и все - сидит читает (может распечатать например, чтобы удобнее было читать).
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Antoxa от 01 Апреля 2002, 22:01:37
хе-хе :))) ведь на самом деле юзер никогда не бывает на сайте... сервер обрывает коннект после передачи всех данных :)

кстати насчет ie-only сомневаюсь
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Ancient от 02 Апреля 2002, 00:00:27
Читайте статью про количество посетителей на сайте. Там четко написано что ТОЧНО ОПРЕДЕЛИТЬ этого нельзя.

Как уже было замечено пользователь на сайте до тех пор, пока получает данные, после этого коннект закрывается.

Можно конечно попробовать работать через сокеты, но на мой взгляд это того не стоит. Слишком большая нагрузка будет и слишком медленно все это будет работать.
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Dm от 02 Апреля 2002, 00:23:43
можно еще приспособить самообновляющийся пустой фрейм  и все такое.

но кто точно может сказать, для чего, с какой целью необходима такая функция?
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Oak от 02 Апреля 2002, 00:55:58
Большие подозрения, что только для того, чтобы красивую цыферку нарисовать  :^)
Название: Как узнать, что юзер покинул сайт ?
Отправлено: AlieN от 02 Апреля 2002, 11:19:54
Не знаю может идея и глупа но можно сделать на пхп-скрипт который будет творить анимированный гиф. Трафика = минимум, зато с точностью до 10 секунд узнаешь когда юзер потерялся из сайта
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Dm от 02 Апреля 2002, 18:12:05
AlieN
только необходимо учесть, что эта фишка пройдет, если везде убрать таймауты.
Название: Как узнать, что юзер покинул сайт ?
Отправлено: AlieN от 02 Апреля 2002, 18:25:06
Dm
Ну тогда выхода нет, реальный пример:
я сидел на своём сайте на модеме смотрел что я в онлайне потом связь отключилась окно я не закрыл ну и когда приконнектился оказалось что я был на сайта 4 часа :)

Да ещё можно iframe попробовать
Название: Как узнать, что юзер покинул сайт ?
Отправлено: Dm от 02 Апреля 2002, 19:50:36
и еще один момент, если сайт качается "тупым" многопоточным offline броузером?
тут масса ограничений и багов, которые могут встретиться.

главное - смысла в этом нет, чтобы так извращаться.
а если я, к примеру, распечатаю за одну минуту всю инфу, выключу компьютер, буду читать в offline? вообще, бесполезно!
Название: Как узнать, что юзер покинул сайт ?
Отправлено: AlieN от 02 Апреля 2002, 20:36:40
Dm
Можно ещё яваскриптом обновлять картинку 1 на 1 каждые н-секунд