Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Как передать HTTP referer предыдущей страницы?

Как передать HTTP referer предыдущей страницы?


     15.08.2018    referer    Все вопросы » Общие вопросы по PHP    2693

вопрос
На страницах сайта размещена ссылка "Заказать", которая ведет на страницу формы form.php, загружающуюся в модальном окне через Fancybox.

Сам скрипт выглядит так:

<?php header("Content-Type: text/html; charset=utf-8");
 
if (isset($_POST['order'])) {
 
$to      = 'name@mail.ru';
$subject = 'Заявка';
$message = "Имя: ".$name = $_POST['name']."\r\n";
$message .= "Номер телефона: ".$phone = $_POST['phone']."\r\n";
$message .= 'Страница: ' . $_SERVER["HTTP_REFERER"]."\r\n";
$headers = 'From: info@site.ru' . "\r\n" .
    'Reply-To: info@site.ru' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();
 
mail($to, $subject, $message, $headers);
header('Location: /success.html');
}
 
?>


Проблема в том, что в письме в поле "Страница" указывается ссылка на саму форму.

Как сделать, так чтобы отображалась предыдущая (основная) страница? То есть та, с корой была загружена форма.

Ответа пока нет


5 комментариев

vitnet
PHP-developer

vitnet - 16 августа 2018 08:05 -

В JS добавьте параметр

Для текущей страницы
referrer: document.URL.toString() || '-'

Для referrer страницы
referrer: document.referrer || '-'

А в PHP получайте его
$message.= 'Страница: ' . (isset($_POST['referrer']) ? $_POST['referrer'] : '-') . "\r\n";

dj-avtosh
PHP-developer

dj-avtosh - 16 августа 2018 13:53 -

$message.= 'Страница: ' . ( isset ( $_POST['referrer'] ) ? $_POST['referrer'] : '-' ) . "\r\n";

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

dim
Юзер

dim - 16 августа 2018 16:50 -

Попробовал этот код, в поле "Страница" отображается просто тире.

dj-avtosh
PHP-developer

dj-avtosh - 16 августа 2018 16:52 -

ну так в js Вам тоже нужен код..

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

dim
Юзер

dim - 16 августа 2018 16:56 -

В этом случае в поле "Страница" ничего не отображается.
Может, я сделал что-то не так.
В каком виде и в какой JS файл нужно добавить JS код?

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх