Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Как узнать откуда юзер пришел
Форумы портала PHP.SU » » Вопросы новичков » Как узнать откуда юзер пришел

Страниц (1): [1]
 

1. No0k - 28 Сентября, 2014 - 19:40:04 - перейти к сообщению
Мне надо узнать откуда юзер перешел по моей ссылке. Т.е. перешел с example.com на helpme.com и мне надо узнать что юзер пришел с example.com.
Как осуществить?
Пробовал: $_SERVER["HTTP_REFERER"] но выдает: Undefined index: HTTP_REFERER
2. teddy - 28 Сентября, 2014 - 20:00:09 - перейти к сообщению
Дело в том, что данный ключ существует не всегда. Если Вы обращаетесь к адресу напрямую, то данного ключа в массиве $_SERVER не бывает, отсюда и ошибка.

Нужно перейти по ссылке, которая ведет на адрес, где проверяется HTTP_REFERER.
Можно проверить на isset, если ключ есть, значит есть и реферер, если не isset, значит реферера нет.
(Добавление)
Так же если верить мануалу, то некоторые браузеры могут просто не отправлять этот заголовок(сам подобного не наблюдал).
Если Вы все сделали правильно, скорее всего проблема в браузере
http://php.net/manual/ru/reserve...ables.server.php
3. Мелкий - 28 Сентября, 2014 - 20:39:40 - перейти к сообщению

teddy пишет:
некоторые браузеры могут просто не отправлять этот заголовок

Могут, это легко изменяется в настройках, у той же настоящей оперы - в быстрых настройках одна галочка. Но с отключённым реферером становится местами неудобно - всякие сайтописатели думают, что он есть всегда и чего-нибудь работает перестаёт.
4. No0k - 28 Сентября, 2014 - 21:17:10 - перейти к сообщению
Пробовал просто тупо выводить: echo $_SERVER["HTTP_REFERER"];
Ищу какое-то решение. Улыбка
5. IllusionMH - 28 Сентября, 2014 - 21:23:39 - перейти к сообщению
No0k, откройте для себя isset. Isset как взрывы - все делает лучше.

 

Powered by ExBB FM 1.0 RC1