PHP - Заголовки (header)
Войти

PHP - Заголовки (header)

PHP - Заголовки (header)

Все заголовки посылаются функцией header (имя заголовка: значение)

Важно: ОБЯЗАТЕЛЬНО все заголовки посылаются до любого вывода

1
2
3
4
5
6
7
8
9
<?php 

header
('Content-type: text/html; charset=windows-1251');
header("Location: example.php"); // куда идти,редирект на этот файл
header ("Refresh: 5"); // перезагрузка браузера через 5 секунд
// редирект на другой сайт через 5 секунд
header("Refresh:5; url=http://site.ru/index.php");

?>

Когда браузер видит заголовок Location, он все бросает и идет выполнять инструкцию. Представим ситуацию: на сайте форма для отправки данных методом post. Пользователь заполнил форму, нажал отправить, данные ушли. Затем опять нажал F5 или Refresh (обновить страницу), данные снова ушли. В итоге в базе получается несколько одинаковых записей (или на форуме несколько одинаковых сообщений). Но если использовать Location, повторная отправка данных не произойдет. Желательно после использования Location остановить выполнение кода с помощью exit, т.е. после этого заголовка код дальше не выполняется, страница перезапрашивается. И получается, что php вхолостую будет отрабатывать код (хотя он уже получил новую страницу через location для обработки).



Ссылки по теме:

  1. php.net/manual/ru/function.header.php
Теги:
php