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 :: Сохранение UTM метки в URL при переходе по страницам сайта

 PHP.SU

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


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

> Без описания
Sheneman
Отправлено: 24 Апреля, 2015 - 12:56:17
Post Id


Новичок


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


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




Доброго времени суток!
Помогите реализовать запись UTM метки в сессию и подстановку ее в URL при переходе по страницам.
Сейчас пользователь заходит на сайт с UTM меткой и при переходе с одной страницы на другую она обрубается! Нужно сделать что бы она вталялась в URL страницы на которую он переходит.
Нашел в просторах такой пример:
PHP:
скопировать код в буфер обмена
  1. <?
  2. $_SESSION['YandexDirect_UTM'] = $_GET['utm_content'];
  3. if (isset($_GET['utm_content'])) {
  4.     $_SESSION['utm_content'] = $_GET['utm_content'];
  5. }
  6. ?>


У меня он не работает.

поясню для чего это:

1. У меня установлен скрипт на сайте, который в зависимости от метки меняет контент. Когда пользователь переходит с одной страницы на другу, метка теряется и контент соотв. не подменяется.
2. Когда пользователь оставляет заявку, мне высылается письмо с контактными данными + весь URL ( $_SERVER['HTTP_REFERER'];) что бы понимать с какой страницы и с какой меткой был пользователь. Но если он перешел на другую страницу, я тереяю метку в заявке.

(Отредактировано автором: 24 Апреля, 2015 - 13:03:53)

 
 Top
exlant
Отправлено: 24 Апреля, 2015 - 13:19:01
Post Id



Посетитель


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


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




Пример дурацкий, зачем писать одну и туже инфу в две разных сессии, и в одну с проверкой, в другую без?
И этот пример не чего не меняет в url, он только пишет сессию!
Другими словами вот к этой переменной - $_SESSION['YandexDirect_UTM'] - вы можете обратиться на любой страничке вашего сайта!

Так что именно у вас не работает?
 
 Top
Sheneman
Отправлено: 24 Апреля, 2015 - 13:25:34
Post Id


Новичок


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


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




exlant, я думал этот скрипт будет подставлять UTM метку при переходе на другую страницу.
Подскажите плиз, как реализовать мою задачу. Что бы метка не пропадала при переходе по страницам сайта?
 
 Top
exlant
Отправлено: 24 Апреля, 2015 - 13:36:13
Post Id



Посетитель


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


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




как вариант можно использовать сессию, только в url ее видно не будет, но обращаться к ней можно будет, и по ее содержимому уже выводить контент!

А если надо именно url поменять, то это или ручками нужно дописывать к url-ам, функцию добавления вашей метки!
Или же использовать функции буфера ob_*, и preg_match - ем, или же чем то другим, искать в вашем коде все ссылки и добавлять к ним уже метку!
 
 Top
Sheneman
Отправлено: 24 Апреля, 2015 - 14:00:34
Post Id


Новичок


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


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




exlant, скрипт ниже, меняет заголовок в соответсвие с UTM в URL
а как мне обратится к сесии в этом скрипте. Чтобы он брал UTM не из URL а из сессии.
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $title = $_GET['utm_content'];
  3. if($title == '1') {$title_text = 'Заголовок1';}
  4. elseif($title == '2') {$title_text = 'Заголовок2';}
  5. else{$title_text = 'Заголовок 0';}
  6. ?>

(Отредактировано автором: 24 Апреля, 2015 - 14:01:04)

 
 Top
exlant
Отправлено: 24 Апреля, 2015 - 14:38:13
Post Id



Посетитель


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


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




в скрипте, который получил $_GET['utm_content']

PHP:
скопировать код в буфер обмена
  1.  
  2. if (isset($_GET['utm_content'])) {
  3.     $_SESSION['utm_content'] = $_GET['utm_content'];
  4. }


в том, где подставлять контент:
PHP:
скопировать код в буфер обмена
  1.  
  2. $title = $_SESSION['utm_content'];
  3. if($title == '1') {$title_text = 'Заголовок1';}
  4. elseif($title == '2') {$title_text = 'Заголовок2';}
  5. else{$title_text = 'Заголовок 0';}


если все это в одном скрипте, то session_start(); - запускается один раз, и перед выводом любого html кода!! Иначе будет ошибка headers уже отправлены!
 
 Top
Sheneman
Отправлено: 24 Апреля, 2015 - 14:42:26
Post Id


Новичок


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


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




exlant, спасибо огромное!
 
 Top
Sheneman
Отправлено: 24 Апреля, 2015 - 17:03:33
Post Id


Новичок


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


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




exlant,
проблема такая теперь, установил скрипт на все страницы.
PHP:
скопировать код в буфер обмена
  1. <?
  2.  if (isset($_GET['utm_content'])) {
  3.     $_SESSION['utm_content'] = $_GET['utm_content'];
  4. }
  5. ?>
  6. <?
  7. $title = $_SESSION['utm_content'];
  8. if($title == '1') {$title_text = 'Заголовок1';}
  9. elseif($title == '2') {$title_text = 'Заголовок2';}
  10. else{$title_text = 'Заголовок 0';}
  11. ?>


При входе с меткой показывает заголовок ок, перехожу на след страницу все ок, перехожу на 3ю страницу и все, сессия теряется.
не важно в каком порядке я кликаю страницы всегда на 3м переходе показывается заголовок 0. Тоесть на 3м переходе сессия уже пустая.
В чем может быть проблема?
(Добавление)
exlant, сорри, разобрался сам)) Стоял дубль кода ниже.
Спасибо еще раз!



Все, мой кося, дублировал код. Спасибо!!!

(Отредактировано автором: 24 Апреля, 2015 - 17:23:27)

 
 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