Заметки кодера сайтов

Передо мной встала задача - сделать форму обратной связи, в которой должна быть указана страница, с которой пришла эта самая заявка. Эта заявка располагается на странице товара. Данный магазин сделан на компоненте JoomShopping с использованием формы обратной связи RSForm! Pro.

Сначала я создал скрытое текстовое поле в заявке. В значение по умолчанию вставил такую строчку:

//<code>
return $_SERVER['HTTP_REFERER'];
//</code>

Но в приходящей заявке адрес приходил не полностью, обрезался конец ссылки. Полазив по интернету, я понял, что доверять запросу $_SERVER['HTTP_REFERER'] нельзя. Немного помучившись на этой странице я получил новую формулу получения адреса страницы:

//<code>
$pageURL = $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
return $pageURL;
//</code>

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

//<code>
$pageURL = $_SERVER['SERVER_NAME'].$_SERVER['HTTP_REFERER'];
return $pageURL;
//</code>

Тьфу-тьфу, пока работает правильно. Вот запустим сайт и посмотрим в деле как она работает

Рекламный блок

{source}
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- Квадрат -->
<ins class="adsbygoogle"
style="display:inline-block;width:250px;height:360px"
data-ad-client="ca-pub-5475749654440008"
data-ad-slot="9614855376"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
{/source}