Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите разобраться!!!
 
 автор: newmen   (11.02.2005 в 16:30)   письмо автору
 
 

Как на PHP реализовать скрипт отслеживания пути, проделанного пользователем на сайте?

   
 
 автор: glsv (Дизайнер)   (11.02.2005 в 16:54)   письмо автору
 
   для: newmen   (11.02.2005 в 16:30)
 

Нужно для каждого посетителя заводить сессию и "считать" странички посещеные пользователм с этой сессией.
Под "считать" я подразумеваю записывать куда либо. В файл или в базу данных.
А сессия нужна, чтобы не путать разных посетителей.
Имя странички можно получить из переменной $PHP_SELF

   
 
 автор: newmen   (11.02.2005 в 21:08)   письмо автору
 
   для: glsv (Дизайнер)   (11.02.2005 в 16:54)
 

с сессиями я то знаю, но есть проблема... иногда сессия обнуляется... как этого избежать? не могли бы привести пример?!

   
 
 автор: Artemy   (11.02.2005 в 22:13)   письмо автору
 
   для: newmen   (11.02.2005 в 21:08)
 

Кстати, а как узнать срок сессии, или он определен?

   
 
 автор: alik   (11.02.2005 в 22:32)   письмо автору
 
   для: Artemy   (11.02.2005 в 22:13)
 

Вообще-то, на нормальном сервере насколько я знаю сессии хранятся полчаса или час.

   
 
 автор: Artemy   (11.02.2005 в 22:33)   письмо автору
 
   для: alik   (11.02.2005 в 22:32)
 

А разве они на сервере храняться?

   
 
 автор: Atom   (11.02.2005 в 22:56)   письмо автору
 
   для: Artemy   (11.02.2005 в 22:33)
 

Да, на сервере.
А куки у пользователя.

   
 
 автор: newmen   (12.02.2005 в 13:22)   письмо автору
 
   для: Atom   (11.02.2005 в 22:56)
 

А вы не могли бы привести пример правильного использования сессий для путей по сайту...???

   
 
 автор: cheops   (12.02.2005 в 13:38)   письмо автору
 
   для: newmen   (12.02.2005 в 13:22)
 

Если для хранения информации использовать MySQL, то сохранить путь можно следующим образом. Понадобится таблица path
id_path int auto_increment - первичный ключ
sid tinytext - идентификатор сессии
path_file tinytext - путь к файлу
puttime datetime - время посещения
Тогда для фиксирования маршрута следует использовать код:
<?php
  
// Установка соединения с базой данных - данный файл
  // без труда можно найти в разделе MySQL нашего форума
  // или в любом Web-приложении использующем MySQL в 
  // разделе downloads
  
include "config.php";
  
// Формируем SQL-запрос
  
$query "INSERT INTO path VALUES (NULL,
              "
.session_id().",
              "
.$_SERVER['PHP_SELF'].",
              NOW())"
;
  
// Выполняем запрос
  
if(!mysql_query($query)) echo "Ошибка";
?>

Идентификаторы сессий, возвращаемые функцией session_id() уникальны - поэтому можно будет без труда определить какие записи принадлежат каждому из посетителей. Элемент суперглобального массива $_SERVER['PHP_SELF'] возвращает текущую страницу. По времени посещения можно даже опеределить маршрут посетителя и сколько времени он тратил на чтение той или иной страницы. Код приведённый выше можно поместить в отдельный файл и вызывать в начале каждой страницы, до её основного содержимого
<?php
  
include "count.php";
?>

   
 
 автор: newmen   (13.02.2005 в 00:26)   письмо автору
 
   для: cheops   (12.02.2005 в 13:38)
 

благодарю! буду проверять на практике.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования