Автор Тема: как сохранить HTTP_REFERER ???  (Прочитано 10734 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Eugene2001

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 48
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« : 15 Октября 2002, 03:34:22 »
помогите сохранить значение в HTTP_REFERER
====


при использовании

header (\'location: \'.$url);
или


теряется значение в HTTP_REFERER,
т.е. на той странице куда человек будет передаресован, уже не получается определить откуда он пришел используя

if (strstr(getenv(\'HTTP_REFERER\'),\'сайт.ru\')


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


Евгений

Оффлайн rembo

  • Больной
  • Постоялец
  • ***
  • Сообщений: 219
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.v4.ru
как сохранить HTTP_REFERER ???
« Ответ #1 : 15 Октября 2002, 04:21:23 »
Так не пробовал?
header(\'location: $url?referer=$HTTP_REFERER\');
или
>

if (strstr($referer,\'сайт.ru\'))
программист должен все сделать так, чтоб потом ничего не делать

Оффлайн Доктор

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 487
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« Ответ #2 : 15 Октября 2002, 04:58:19 »
Или в сессию (или просто в куку, в конце концов) пихать...

Оффлайн Eugene2001

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 48
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« Ответ #3 : 15 Октября 2002, 05:05:41 »
что-то не работает...

грузится страница с адресом

http://www.сайт.ru/index.php?referer=>

но она уже не помнит тот сайт, с которого редиректнули...

Оффлайн Eugene2001

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 48
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« Ответ #4 : 15 Октября 2002, 05:34:08 »
не работает и так...


header(\'location: http://www.сайт.ru/index.php?referer=$HTTP_REFERER\');

?>

так грузится страница с адресом http://www.сайт.ru/index.php?referer=$HTTP_REFERER

которая уже "потеряла" $HTTP_REFERER

помогите, пожалуйста, разобраться как это реализовать на header или META

Оффлайн rembo

  • Больной
  • Постоялец
  • ***
  • Сообщений: 219
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.v4.ru
как сохранить HTTP_REFERER ???
« Ответ #5 : 15 Октября 2002, 07:36:45 »
Цитировать
которая уже "потеряла" $HTTP_REFERER

Ну дык тогда пропиши ?referer=$HTTP_REFERER на той странице где еще не "потеряла". Или вопрос поставь по другому.
программист должен все сделать так, чтоб потом ничего не делать

Оффлайн GotZfild

  • Универсал
  • Старожил
  • ****
  • Сообщений: 456
  • +0/-0
  • 2
    • Просмотр профиля
    • http://myphp.dem.ru
как сохранить HTTP_REFERER ???
« Ответ #6 : 15 Октября 2002, 09:32:46 »
Цитировать
header(\'location: http://www.сайт.ru/index.php?referer=$HTTP_REFERER\');

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

Оффлайн Eugene2001

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 48
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« Ответ #7 : 15 Октября 2002, 13:15:02 »
пробовал разные варианты... пишу что получилось...

если посетитель заходит на site1.ru/go.php и оттуда его редиректят на site2.ru/index.php, то на site2.ru/index.php НЕ ОПРЕДЕЛЯЕТСЯ, что посетитель зашел с site1.ru
=========
если посетитель заходит на site1.ru/index.php, а там САМ жмет на ссылку, которая его переводит на site1.ru/go.php - то тогда после редиректа на site2.ru/index.php - он определяется как зашедший с site1.ru (!) - то что и нужно! но это получается только при нажатии самим пользователем на ссылку на сайте site1.ru!
=========
можно как-нибудь сделать так, чтобы refer сохранялся даже если посетитель попадает с site3.ru СРАЗУ на site1.ru/go.php, откуда его автоматически редиректят на site2.ru/index.php.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« Ответ #8 : 15 Октября 2002, 13:24:12 »
ты неправильно понимаешь термин referer
тебе нужен не он, а просто гарантия, что человек пришел с твоей редиректилки - я правильно понял?

Оффлайн Eugene2001

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 48
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« Ответ #9 : 15 Октября 2002, 13:33:40 »
да, правильно.
именно это мне и нужно,
извините если я своими описаниями ввел кого-то в заблуждение.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« Ответ #10 : 15 Октября 2002, 13:48:23 »
долбаный форум потерял мое сообщение.
черт бы его подрал.

Евгений.
А зачем тебе вообще это нужно?
способов есть масса.
Например скрипт на сайте 1 может ставтить куку ,а на сайте 2 - ее читать
или просто банально добавлять к ссылке параметр -
?from_site1.
Ты можешь толком расскажить - что ты вообще делаешь, доступ к каким из перечисленных серверов имеешь?

...долбаный форум.

Оффлайн Eugene2001

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 48
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« Ответ #11 : 15 Октября 2002, 14:05:17 »
я имею доступ к site1.ru и site2.ru

и хотелось бы чтобы посетитель по какой-нибудь ссылке с чужого сайта заходил на site.ru/go.php, там ему представала бы страница:

сайт грузится...
подождите несколько секунд...

и через 3 секунды его бы перекидывало (это можно только через META?) на site2.ru/index.php

а на странице index.php определяется точно ли посетитель зашел с site1.ru (если оттуда, то ему выдается одна информация, если зашел сразу на index.php или с другого сайта, то ему выдается другая инфо)

страница index.php работает нормально (все нормально определяет)

но если я использую редирект на go.php - то Index.php с site2.ru уже не определяет, что человек зашел с site1.ru


подскажите что надо написать в site1.php/go.php (чтобы была 3-х секундная задержка редиректа, во время которой посетитель мог бы прочитать какую-нибудь инфу) и в site2.ru/index.php

сейчас текст в index.php начинается так:
if (strstr($referer,\'site1.ru\')...

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« Ответ #12 : 15 Октября 2002, 14:32:14 »
через 3 секунды - да, только мета.

Я ж тебе написал, как сделать.
либо через куки, либо параметром.

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
как сохранить HTTP_REFERER ???
« Ответ #13 : 15 Октября 2002, 14:40:08 »
Цитировать
либо через куки

Хмм, вообще-то если Eugene2001 правильно указал вид адресов 2 сайтов (site1.ru и site2.ru), то есть сайты имеют разные домены то куки не подойдут:
Цитировать
Например скрипт на сайте 1 может ставтить куку ,а на сайте 2 - ее читать



PS
AFAIK
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
как сохранить HTTP_REFERER ???
« Ответ #14 : 15 Октября 2002, 15:12:58 »
ой, да. тормознул я конкретно.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28