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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Редирект с параметрами

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
vadokx
Отправлено: 25 Февраля, 2016 - 16:53:33
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Февр. 2016  


Помог: 0 раз(а)




Добрый день, форумчане, прошу помощи:

Что требуется?

К примеру у меня есть много instagram аккаунтов (источников переходов)
Для того что бы их разделять и понимать откуда пришел пользователь, я решил обращаться к сайту на различные адреса. На самом сайте происходит редирект на сайт сбора статистики. Получается 3 узла (аккаунт)->(промежуточный сайт)->(сайт сбора статистики). Т.е. если по простому, мне нужно перекинуть идентификатор аккаунта через промежуточный узел.


примеры ссылок в аккаунтах, по которым происходит переход
mysite.ru/first
mysite.ru/second
mysite.ru/third

вот мой .htaccess

RewriteEngine on
RewriteBase /
RewriteRule ^(.*) index.php

Т.е. при обращении к любой странице, будет открываться index.php
текст самого же index.php:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $a=$_SERVER['HTTP_REFERER'];
  3.  
  4. header( 'Location: http://tds.ru?utm_source='.$a);
  5.   exit();
  6.  
  7. ?>


Как мне казалось, в переменную $a должен вставляться реферер, а точнее строка типа mysite.ru/first по которой я перешел на сайт.

На сайте tds.ru я отслеживаю umt_source и понимаю в итоге откуда пришел пользователь.
Но к сожалению получить корректный реферер и передать его сквозь промежуточный узел не выходит.

Подскажите в чем причина моих не удач?
Возможно есть другие решения поставленной задачи?

P.S.
Можно все это конечно сделать через ?id=1, а потом получать этот параметр get, но интересует именно данное решение.

(Отредактировано автором: 25 Февраля, 2016 - 16:55:13)

 
 Top
Prizma
Отправлено: 25 Февраля, 2016 - 19:27:37
Post Id



Посетитель


Покинул форум
Сообщений всего: 463
Дата рег-ции: Июнь 2012  
Откуда: Санкт-Петербург


Помог: 5 раз(а)




vadokx пишет:
Возможно есть другие решения поставленной задачи?

А не проще просто перенаправить запросы через .htaccess на index.php и там смотреть переменную $_SERVER['REQUEST_URI'] которая всегда будет верной?
(Добавление)
.htaccess:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. RewriteEngine On
  3. Options +FollowSymlinks
  4. RewriteCond %{REQUEST_URI}
  5. RewriteRule   ^(.*) index.php

вроде так
 
My status
 Top
vadokx
Отправлено: 26 Февраля, 2016 - 15:23:29
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Февр. 2016  


Помог: 0 раз(а)




установил ваш код на сайт в htaccess и теперь выдает ошибку 500 при обращении к сайту на любой адрес и на корневой тоже.


Вернул на свой, и поменял лишь присваивание переменной

Вроде работает, передает в источники ссылку типа /first

В чем проблема с этим реферором? почему он корректно не присваивается?
Читал инфу, что на него вообще нельзя надеятся.

Спасибо за ответ!

(Отредактировано автором: 26 Февраля, 2016 - 15:24:59)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB