Реально ли узнать урл где был юзер на 2 и на 3 шага назад?

12
speed-core
На сайте с 30.03.2014
Offline
33
#11

AlexandrSG не всегда, готовый велосипед лучше. ой не всегда...

HOST-PROTECTION (/ru/forum/848747), профессиональный web хостинг, гарантия стабильности, защита от DDoS.
P
На сайте с 06.01.2009
Offline
601
#12
AlexandrSG:
postavkin, а чем вас не устраивает вебвизор от яши?

В чем хитрость изобретения новой модели колеса ?)

Прошу прощения, а причем тут вебвизор?

Мне надо знать вашу предыдущую историю по сайту (2 предыдущих урла) сейчас, когда вы в странице товара, чтобы показать вам некоторый блок информации.

---------- Добавлено 22.04.2014 в 21:20 ----------

speed-core:
Да где ходите храните.
$_SESSION['url']=array();
Потом туда запихивайте, хоть 100 урл путем
$_SESSION['url'][]=$url;
Только не забывайте, чем больше туда пихаете данных, тем больше ресурсов кушать будет. Ну или задайте диапазон, например хранить в истории только 10 переходов. И с ним работайте.

Буду писать 3 последних посещенных юзером страницы моего сайта.

А не подскажете, в начало массива писать можно? кроме как переставлять данные


$_SESSION['url'][0]=$текущий урл;
$_SESSION['url'][1]=$_SESSION['url'][0];
$_SESSION['url'][2]=$_SESSION['url'][1];

Т.е. писать в начало массива то можно, array_unshift

но как ограничить запись не более 3-х элеметов?

forest25
На сайте с 12.09.2009
Offline
67
#13

Ошибку выдает
PHP Warning: session_start() [0function.session-start0]: Cannot send session cache limiter - headers already sent (output started at... 

Скорее всего у вас есть пробелы в самом начале файла и поэтому заголовки успевают уехать вместе с этими данными, а скрипт соответственно рушается что «заголовки уже отправлены»

VPS 512MB 20GB SSD KVM - 5$ (http://u.hmdw.me/digitalocean) | ИМХО о хостингах (http://u.hmdw.me/hosting)
P
На сайте с 06.01.2009
Offline
601
#14

Подскажите, пожалуйста, какие могут быть причины, что в Firefox перестали записываться данные в сессию?

$_SESSION['url'][0] = "/$url";

просто перестало записывать и все.

проверил в хроме, работает.

B
На сайте с 13.02.2008
Offline
262
#15

postavkin, Если сайт хорошо-посещаемый (например 1 млн чел/сутки) и большинство посетителей - просто гости, то я бы не связывался бы с сессиями, а ограничился бы кукакми.

P
На сайте с 06.01.2009
Offline
601
#16
borisd:
postavkin, Если сайт хорошо-посещаемый (например 1 млн чел/сутки) и большинство посетителей - просто гости, то я бы не связывался бы с сессиями, а ограничился бы кукакми.

200 -400 человек сутки. понял, поизучаю, но пока что просто надо реализовать задачу. спасибо

ps пока не понял как писать в куки

странно то, что сессия перестала записываться именно в Firefox (после проверки просмотра нескольких десятков страниц).

Бред какой то, закрыл и открыл Firefox снова, теперь пишутся сессии.

V
На сайте с 09.02.2011
Offline
38
#17

На своем сайте сайте можете, где был пользователь до вашего сайта можно узнать только первый рефер.

Для своего сайта :

$_SESSION['urls'][sizeof($_SESSION['urls'])]=$_SERVER['REQUEST_URI']ж

метод топорный конечно но можно додумать .

humbert
На сайте с 16.03.2006
Offline
540
#18

Хранение урлов



<?php
//если нет id юзера, пишем его в куки
if(!$_COOKIE['user_id'])
{$_COOKIE['user_id']=md5(md5(time()).md5(mt_rand(1,1000000)));
setcookie("user_id", $_COOKIE['user_id']);
}

//---создаем файл с историей посещений
if(!file_exists($_COOKIE['user_id'].".txt"))
{$f=fopen($_COOKIE['user_id'].".txt", "w");
fclose($f);
}

//---Записываем текущий урл в строчку ниже предидущего
$f=fopen($_COOKIE['user_id'].".txt", "a");
fwrite($f, $_SERVER['REQUEST_URI']."\r\n");
fclose($f);




?>


Как посмотреть урлы



<?php
//если нет id юзера, пишем его в куки
if(!$_COOKIE['user_id'])
{$_COOKIE['user_id']=md5(md5(time()).md5(mt_rand(1,1000000)));
setcookie("user_id", $_COOKIE['user_id']);
}

$a_urls=@file($_COOKIE['user_id'].".txt");


//----шаг от конца записи, т.е. если интересно на два шага назад, то шаг равен 2
$step=2;
echo $a_urls[count($a_urls)-$step+1); ?>

Код писал без проверки, но смысл таков.

Присваиваем юзеру ID в куках и записываем все его ходы в файлик, каждый новый урл с новой строки.

Затем в любой момент можем посмотреть куда юзер ходил и в каком порядке.

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

Можно в БД писать.

P.s. ***91 - это открытая скобка [

***93 - это закрытая скобка ]

Парсинг прайс-листов, наполнение интернет-магазина товаром. (https://humbert.ru) Любая CMS (Битрикс, OpenCart, Prestashop и даже Woo Commerce )
Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#19
borisd:

postavkin, Если сайт хорошо-посещаемый (например 1 млн чел/сутки) и большинство посетителей - просто гости, то я бы не связывался бы с сессиями, а ограничился бы кукакми.

Если сайт с такой посещалкой и это интернет-магазин, то ни прогеры, ни тем более овнер(ы) не будут такие вопросы задавать!

Антон, не парь себе моск!

Пиши в БД данные, а юзеру пиши в куки идентификатор какой-нить(да хоть 1,2,3). Раз в неделю можешь чистить старые(ненужные) записи.

ну а выдернуть хронологию посещений юзера проще пареной репы.

Подпись))
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий