@proclub

Как сохранить утм метки при переходе на другую страницу сайта?

Привет ребят, такой вопрос есть форма

<form action="send.php" method="post">
						<input type="hidden" name="utm_source" value="<?php $utm_source = $_GET['utm_source']; echo $utm_source; ?>">
							<input type="hidden" name="utm_medium" value="<?php $utm_medium = $_GET['utm_medium']; echo $utm_medium; ?>">
							<input type="hidden" name="utm_campaign" value="<?php $utm_campaign = $_GET['utm_campaign']; echo $utm_campaign; ?>">
							<input type="hidden" name="utm_content" value="<?php $utm_content = $_GET['utm_content']; echo $utm_content; ?>">
							<input type="hidden" name="utm_term" value="<?php $utm_term = $_GET['utm_term']; echo $utm_term; ?>">
						<input type="text" required="required" name="name" class="form-control" placeholder="Имя">
						<input type="text" id="phone"  name="phone" class="form-control" placeholder="Телефон">
						<button class="button" 
onclick="ym(34846055, 'reachGoal', 'zapisalis_na_test_drive'); ga ('send', 'event', 'form', 'send');" type="submit">Записаться на тест-драйв</button>
					</form>


Есть её обработчик:
//Принимаем постовые данные
    $name=$_POST['name'];
    $phone=$_POST['phone'];
    $utm_source = $_POST['utm_source'];
    $utm_medium = $_POST['utm_medium'];
    $utm_term = $_POST['utm_term'];
    $utm_content = $_POST['utm_content'];
    $utm_campaign = $_POST['utm_campaign'];



     
    //Тут указываем на какой ящик посылать письмо
    $to      = 'rotatephenix@gmail.com';
    
    //Далее идет тема и само сообщение
    $subject = "Заявки с сайта Microb.dynamic.su";
    $message = "
    Письмо отправлено из моей формы microb.dynamic.su.<br />
    Пользователь указал:<br />Имя: ".htmlspecialchars($name)."<br />
    Телефон: ".htmlspecialchars($phone)."<br />
    utm_source = ".htmlspecialchars($utm_source)." <br />
    utm_medium = ".htmlspecialchars($utm_medium)." <br />
    utm_term = ".htmlspecialchars($utm_term)." <br />
    utm_campaign = ".htmlspecialchars($utm_campaign)." <br />
    utm_content = ".htmlspecialchars($utm_content);
    $headers = "From: translate-lang.bid <site-email@mysite.ru>\r\nContent-type: text/html; charset=utf8 \r\n";
    mail ($to, $subject, $message, $headers);


На главной на почту приходят корректные утм метки. А вот если пользователь зайдет на внутреннюю и оттуда отправит форму, то она будет уже без меток. Как можно их сохранять?

Если не сложно, ссылку на доку что даст ответ, а то у нас с php не очень дела идут
  • Вопрос задан
  • 162 просмотра
Пригласить эксперта
Ответы на вопрос 2
joeberetta
@joeberetta Куратор тега JavaScript
Читай: https://epdf.pub/google-for-dummies.html
Если у вас utm настроен только на главную страницу, то наверное нужно (далее костыль, на свой страх и риск) при входе на сайт записать его utm данные в куки/локалсторэж и при отправке его использовать. НО! Не забудьте подчищать данные перед уходом пользователя с сайта/после отправки формы, да бы не сломать себе же статистику, например, кривыми/старыми/неверными данными
Ответ написан
usdglander
@usdglander Куратор тега PHP
Yipee-ki-yay
При обработке запроса сохраняйте utm-метки в сессию, если они есть. Если их нет, берите из сессии.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Cloud4Y Ярославль
от 65 000 до 130 000 ₽
Farpost Владивосток
от 100 000 до 160 000 ₽
Сын маминой подруги Нижний Новгород
от 65 000 ₽