100% что передастся url внутр страницы от куда юзер пришел, как сделать?

P
На сайте с 06.01.2009
Offline
601
1040

Друзья, вынужден создать ещё тему. Прошу не пинать но решить проблему надо.

Сделал вывод хленых крошек в модели. Они выводятся в зависимости от того из какого раздела юзер пришел в модель.

Вот как надо и у меня так

[ATTACH]102858[/ATTACH]

Но! Смотрел Вебвизор вчера более чем у половины юзеров не отображаются как надо (показывает крошки те которые я настроил если нет передачи urla), а значит у половины юзеров url не передается почему то. Вот как у них (это я сделал чтобы по умолчанию так)

[ATTACH]102859[/ATTACH]

Прошу помочь.

Сделал так

$_SERVER["HTTP_REFERER"]
- видать не работает уже.

А что если сделать таким способом?

<?php session_start(); $_SESSION['razdel'] = текущий урл; ?>
и в странице модели смотреть чему равен razdel? Просто мне не проверить сейчас...

Задачу решить надо. Буду рад любой подсказке. Сайт можно посмотреть в подписи. Спасибо заранее

jpg 102858.jpg
jpg 102859.jpg
gormarket
На сайте с 29.12.2010
Offline
47
#1

Попробуйте что-то типа

$_SESSION['lasturl']=$_SERVER["REQUEST_URI"];

но перед этим проверить старое значение $_SESSION['lasturl'] и сохранить его в истории посещенных пользователем страниц (например в массиве $_SESSION['history_user'])

Но я уже писал Вам, что будет, если у посетителя будет открыто несколько вкладок здесь

И такое использование сессий будет работать только если браузер посетителя поддерживает сессии (либо через куки, либо через параметр в адресе страницы - во втором случае уже Вам нужно о передаче параметра заботиться )

Товары и цены в магазинах Вашего города: Городской рынок (http://gormarket.ru/)
P
На сайте с 06.01.2009
Offline
601
#2

Провел такой тест. Сам позаходил на страницы моделей из разных разделов. У меня в браузере отображается всё как надо. Посмотрел, что показывает Я.Метрика - это в метрике косяк, она не показывает тот путь как я попал в модель, т.е. она не показывает то что видел я.

Теперь вот незадача - как бы понять в действительности какой процент юзеров видят то что нужно видеть.

---------- Добавлено 22.01.2012 в 17:36 ----------

gormarket:
Попробуйте что-то типа
$_SESSION['lasturl']=$_SERVER["REQUEST_URI"];
но перед этим проверить старое значение $_SESSION['lasturl'] и сохранить его в истории посещенных пользователем страниц (например в массиве $_SESSION['history_user'])

Понимаете, мне не надо историю посещенных им страниц. Достаточно в странице модели знать страницу из которой он попал в модель. Т.е. достаточно знать только предыдущую страницу, весь путь от главной знать не нужно...!!!

---------- Добавлено 22.01.2012 в 17:39 ----------

gormarket:
И такое использование сессий будет работать только если браузер посетителя поддерживает сессии (либо через куки, либо через параметр в адресе страницы - во втором случае уже Вам нужно о передаче параметра заботиться )

Проверил, по ЯМетрике - Cookies вкючены у 100% посетителей.

Как думаете в действительности они видят то, что нужно *(т.е. в странице модели это работает?

$urlperehoda = $_SERVER["HTTP_REFERER"]; // адрес url полный от куда пришел


---------- Добавлено 22.01.2012 в 17:53 ----------

ps Более того, сейчас для проверки поставил вывод под H1 urla с которого юзер пришел. И к моему удивлению при просмотре в Вебвизоре он написал путь http://metrika.yandex.ru/... и т.д.

То есть в метрике моё навигационное меню и не видно.

RM
На сайте с 21.06.2011
Offline
77
#3

Можно сделать так: каждому разделу дать свое имя, к примеру - index, category1 и т.д. затем при формировании страницы проходится по всем ссылкам и добавлять к ним GET параметр указывающий на раздел который сейчас открыт(который формируется в данный момент). Таким образом на странице модели просто смотрим содержимое $_GET['razdel'] и понимаем откуда пришел юзер...

Также можно усложнить данное решение, ведя историю посещений с помощью записи массива данных с этих переменных и времени захода на страницу(timestamp), затем строить полный путь по сайту...

P
На сайте с 06.01.2009
Offline
601
#4

RoMaN444Ik , понимаете, сейчас вопрос состоит в том, что действительно в 90% браузеров юзеров не подерживается передача $_SERVER["HTTP_REFERER"]; ?

Я не могу понять как это узнать. Если у посетителей всё работает как и у меня, то вопрос то исчерпан, у меня всё показывает как надо, брательнику звонил, он посмотрел, тоже гут. Т.е. остается только собирать статистику и спрашивать у друзей...

Dreammaker
На сайте с 20.04.2006
Offline
569
#5
postavkin:
Но! Смотрел Вебвизор вчера более чем у половины юзеров не отображаются как надо

Вебвизор не показывает то, что видят пользователи, он берёт за основу ваш сеанс, а на него уже накладывает записанные телодвижения. То есть, если вы будет залогинены как админ, то и пользователя покажет сеанс админа.

Так что нужно иметь в виду, когда смотреть в вебвизор.

SandyMan
На сайте с 13.06.2004
Offline
129
#6

Передача реферера в заголовках не является обязательной в браузерах. Тем более, это усугубляется ещё и тем, что если узер пришёл со страницы HTTPS, то по правилам протокола, реферер вообще запрещено передавать.

Более того, в Вашем случае, если пользователь пришёл на вашу страницу с гугла например, то логика "знать страницу из которой он попал в модель" не будет работать в принципе.

Я бы сделал "хлебные крошки" не по принципу "где был и куда пришёл", а по принципу "где я сейчас нахожусь в каталоге". Так Вы избавите себя от головной боли с куками, сессиями и реферами. Да и в маркетинговом смысле вроде как лучше Вам самому направить юзера.

P
На сайте с 06.01.2009
Offline
601
#7
SandyMan:
Я бы сделал "хлебные крошки" не по принципу "где был и куда пришёл", а по принципу "где я сейчас нахожусь в каталоге". Так Вы избавите себя от головной боли с куками, сессиями и реферами. Да и в маркетинговом смысле вроде как лучше Вам самому направить юзера.

Не получится, т.к. в одну модель можно попасть из разных разделов - из плитки напольной, из керамогранита, из матовой напольной плитки, из плитки для фасада и т.д. А разные страницы делать (в url со знаками вопросов и т.д.) с одним и тем же контентом, чтобы типа каждая отвечала своему разделу не вижу правильным выходом.

---------- Добавлено 22.01.2012 в 20:28 ----------

SandyMan:
Более того, в Вашем случае, если пользователь пришёл на вашу страницу с гугла например, то логика "знать страницу из которой он попал в модель" не будет работать в принципе.

Если он не с внутренней страницы попал в модель, то ему выводятся крошки вида

главная / производители / производитель этой модели / сама модель

Поэтому мне url надо определять только при переходе с одной из внутренних страниц сайта в модель.

RM
На сайте с 21.06.2011
Offline
77
#8
postavkin:
Не получится, т.к. в одну модель можно попасть из разных разделов - из плитки напольной, из керамогранита, из матовой напольной плитки, из плитки для фасада и т.д. А разные страницы делать (в url со знаками вопросов и т.д.) с одним и тем же контентом, чтобы типа каждая отвечала своему разделу не вижу правильным выходом.

---------- Добавлено 22.01.2012 в 20:28 ----------


Если он не с внутренней страницы попал в модель, то ему выводятся крошки вида
главная / производители / производитель этой модели / сама модель
Поэтому мне url надо определять только при переходе с одной из внутренних страниц сайта в модель.

В моем посте описано решение вашей проблемы, там ни слова не сказано про $_SERVER['HTTP_REFERER'], я там предложил новое решение проблемы. Т.е. во всех ссылках будет GET параметр, скажем razdel, он будет указывать на тот раздел, который открыт. Пример: пользователь находится на странице page1, во всех ссылках передается этот параметр(http://site.ru/pages/page5/models/etc?razdel=page1). При переходе на страницу назначения(страница модели или еще чего) вы просто вытаскиваете значение этого параметра через $_GET['razdel'] и анализируете его, в нем будет название предыдущей страницы юзера.

P
На сайте с 06.01.2009
Offline
601
#9
RoMaN444Ik:
В моем посте описано решение вашей проблемы, там ни слова не сказано про $_SERVER['HTTP_REFERER'], я там предложил новое решение проблемы. Т.е. во всех ссылках будет GET параметр, скажем razdel, он будет указывать на тот раздел, который открыт. Пример: пользователь находится на странице page1, во всех ссылках передается этот параметр(http://site.ru/pages/page5/models/etc?razdel=page1). При переходе на страницу назначения(страница модели или еще чего) вы просто вытаскиваете значение этого параметра через $_GET['razdel'] и анализируете его, в нем будет название предыдущей страницы юзера.

Я правильно понимаю?

из раздела A ссылка в модель будет вида

http://site.ru/apavisa/beton.php?razdelA=page1

из раздела B ссылка на эту же модель будет

http://site.ru/apavisa/beton.php?razdelB=page1

из раздела красная плитка ссылка на эту же модель будет

http://site.ru/apavisa/beton.php?razdelKrasnaya=page1

и.т.д?

Тем самым то что со словом razdel это название раздела, а page1 или page2 и т.д. с какой страницы данного раздела он пришел (т.к. в разделе может быть 100 вариантов моделей (а выводится из по 12-ть) и эта может быть не на первой странице, а например на 5-й или 8-й).

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