Кнопка "назад"
Cтатья опубликована: 28/04/2006 04:39:34
Автор: Лещик Виталий
Просмотров статьи: 775
Статья опубликована в следующих разделах сайта: PHP & MySQL
Воспользуемся PHP и создадим кнопку "назад". Она пригодится для навигации по сайту.
Воспользуемся глобальным хеш-массивом $_SERVER. В нём в ячейке с индексом HTTP_REFERER хранится URL предыдущей страницы. Теперь нужно сформировать гипертекстовую ссылку, которая будет отправлять посетителя на эту страницу.
Код:
<?php
if (isset($_SERVER['HTTP_REFERER']))
{
echo '<a style="margin-right:20px;"
href="'.$_SERVER['HTTP_REFERER'].'">
<<< Назад</a>';
}
?>
Получится такой результат: <<< Назад
Существует такой вариант, когда пользователь не переходил с страницы на страницу нашего сайта, а пришёл к нам по ссылке с другого ресурса. В таком случае кнопку назад можно не отображать. Если домен нашего сайта совпадает с доменом сайта, то будем выводить ссылку, в противном случае ничего делать не будем. Снова вспомним массив $_SERVER. В нём в ячейке с индексом SERVER_NAME хранится адрес текущей страницы. Его необходимо разбить на отдельные составляющие. Теперь код выглядит так:
Код:
<?php
if (isset($_SERVER['HTTP_REFERER']))
{
$g=$_SERVER['HTTP_REFERER'];
$g2= parse_url($g);
if (strtoupper($_SERVER[SERVER_NAME]) ==
strtoupper($g2['host']))
{
echo '<a href="'.$_SERVER['HTTP_REFERER'].'">
<<< Назад</a>';
}
}
?>
Осталось заметить, что результат будет не такой, как при щелчке по аналогичной кнопке на панели инструментов. Если пользователь посетил несколько страниц, то круг переходов замкнётся между двумя последними.