Правильное перенаправление

Тема в разделе "PHP", создана пользователем 1nSane, 16 мар 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. 1nSane

    1nSane Создатель

    Регистр.:
    3 сен 2008
    Сообщения:
    34
    Симпатии:
    0
    День Добрый!
    Возникла проблема с перенаправлением...

    Имеем: Источник => САЙТ => Получатель Пользователь приходит на САЙТ с какого-то сайта, из почтовой программы, ICQ, просто набивает ссылку в адресе браузера... далее из строки GET берутся параметры и его автоматически должно перебрасывать на Сайт-Получатель, но главное условие - передача REFERER.

    Вопрос: Какой способ для этого подойдет?
    Пробовал - реферера нет, сейчас стоит <a location.href>, он передает реферера в FireFox, Opera, Safari, Chrome, но не работает в семействе IE. Поэтому пришлось ставить паузу в 10 сек и писать, что если вы не были направлены автоматом - жми СЮДА. Естественно, юзеры с IE могут ждать до посинения... КАК СДЕЛАТЬ ГРАМОТНЫЙ АВТОПЕРЕХОД В IE?

    P.S. Почему-то при этом чтение рефера из $_SERVER не пашет, надо смотреть через getenv() Спасибо за ответы.
     
  2. a_n_d_y

    a_n_d_y

    Регистр.:
    26 мар 2006
    Сообщения:
    465
    Симпатии:
    61
    Вариантов несколько.
    Пхп, мета или яваскрипт.
    Кстати не совсем понятно что у тебя с ИЕ там происходит, дай код самого перенаправления...
     
  3. 1nSane

    1nSane Создатель

    Регистр.:
    3 сен 2008
    Сообщения:
    34
    Симпатии:
    0
    Сейчас у меня так:
    META REFRESH - не передает реферера
    location.replace(href) - передает везде, кроме ИЕ
    PHP - о чем именно вы?

    И почему-то не работает таймаут. Через ГЕТ ставим значение 10 сек, оно переводится в 10000 мсек, но при заходе по ссылке переходит моментально, хоть 1000 сек ставь паузу...
     
  4. PapaJoe

    PapaJoe

    Регистр.:
    4 авг 2008
    Сообщения:
    620
    Симпатии:
    311
    Такой способ передает refer(у меня работает в IE:(
    document.location.href='http://www.site.com/'
     
  5. t0os

    t0os

    Регистр.:
    21 окт 2007
    Сообщения:
    284
    Симпатии:
    36
    Видимо об этом:

     
  6. 1nSane

    1nSane Создатель

    Регистр.:
    3 сен 2008
    Сообщения:
    34
    Симпатии:
    0
    MONtrade
    Попробую

    t0os
    Такой способ мне не подойдет, наверное... У меня страница стоится из
    include(header.php);
    include(main.php);
    include(footer.php);
    Значение для автоперехода появляется в main.php, а значит заголовок давно послан... Или я ошибаюсь?
     
  7. t0os

    t0os

    Регистр.:
    21 окт 2007
    Сообщения:
    284
    Симпатии:
    36
    1nSane, если вывода в браузер (HTML, echo, print) до редиректа не было, то все нормально.
     
  8. 1nSane

    1nSane Создатель

    Регистр.:
    3 сен 2008
    Сообщения:
    34
    Симпатии:
    0
    t0os
    Естественно был.
    В Хидере - шапка, меню верхнее...
    В Мейне - главное окно, в котором инклудятся разные страницы в зависимости от ГЕТ параметров (вот при определенном вызове и должен быть редирект)
    В Футере - правая менюшка и низ...

    Поэтому хидер уже послан, 100%.

    Почему тут таймаут не пашет, через гет подаем 10, получаем паузу в 10000 мс, но ее реально нет :(

    Хотя я понимаю, что делаю через Ж, посылая браузерам второй раз <body>... есть более элегантное решение?
     
  9. t0os

    t0os

    Регистр.:
    21 окт 2007
    Сообщения:
    284
    Симпатии:
    36
    А setTimeout параметр с таймаутом - тип string? Или int?

    Так пашет?
     
  10. 1nSane

    1nSane Создатель

    Регистр.:
    3 сен 2008
    Сообщения:
    34
    Симпатии:
    0
    t0os
    Нет, не помогло, также моментально переходит, как и раньше...
     
Статус темы:
Закрыта.