PHP. Обработка HTTP запросов

Содержание

Слайд 2

Передача параметров запроса через суперглобальные переменные $_GET - массив параметров переданных

Передача параметров запроса через суперглобальные переменные

$_GET - массив параметров переданных методом

GET
$_POST – массив параметров переданных методом POST
$_COOKIE – массив переданных ключиков
$_REQUEST – объединенный массив переданных параметров
$_ SERVER – массив, содержащий информацию, переданную веб-сервером
$_FILES – массив, содержащий сведения о переданных методом POST файлах

PHP: обработка HTTP запросов

© НГУЭУ 2013

Слайд 3

Работа с $_FILES Суперглобальный массив $_FILES содержит всю информацию о загруженных

Работа с $_FILES

Суперглобальный массив $_FILES содержит всю информацию о загруженных файлах:


$_FILES['userfile']['name'] - оригинальное имя файла на компьютере клиента
$_FILES['userfile']['type'] - Mime-тип файла, в случае, если браузер предоставил такую информацию. Пример: "image/gif"
$_FILES['userfile']['size'] - размер в байтах принятого файла
$_FILES['userfile']['tmp_name'] - временное имя, с которым принятый файл был сохранен на сервере
$_FILES['userfile']['error'] - код ошибки, которая может возникнуть при загрузке файла

PHP: обработка HTTP запросов

© НГУЭУ 2013

Слайд 4

$_SERVER Переменная $_SERVER - это суперглобальный массив, содержащий информацию, такую как

$_SERVER

Переменная $_SERVER - это суперглобальный массив, содержащий информацию, такую как заголовки,

пути и местоположения скриптов. Записи в этом массиве создаются веб-сервером.
Индексы:
'SERVER_ADDR' - IP адрес сервера, на котором выполняется текущий скрипт
'SERVER_NAME' - имя хоста, на котором выполняется текущий скрипт
'SERVER_SOFTWARE' - строка идентификации сервера, указанная в заголовках, когда происходит ответ на запрос
'SERVER_PROTOCOL‘ - имя и версия информационного протокола, через который была запрошена страница; к примеру 'HTTP/1.0';
'REQUEST_METHOD' - Какой метод был использован для запроса страницы; к примеру 'GET', 'HEAD', 'POST', 'PUT'.

PHP: обработка HTTP запросов

© НГУЭУ 2013

Слайд 5

$_SERVER 'QUERY_STRING' - строка запросов, если есть, с помощью которой была

$_SERVER

'QUERY_STRING' - строка запросов, если есть, с помощью которой была получена

страница
'DOCUMENT_ROOT' - директория корня документов, в которой выполняется текущий скрипт
'HTTP_ACCEPT' - содержимое заголовка Accept: из текущего запроса, если он есть
'HTTP_ACCEPT_CHARSET' Содержимое заголовка Accept-Charset: из текущего запроса, если он есть. Например: 'iso-8859-1,*,utf-8‘
'HTTP_REFERER' - адрес страницы (если есть), которая привела браузер пользователя на эту страницу. Этот заголовок устанавливается веб-браузером пользователя.
'HTTP_USER_AGENT' - содержимое заголовка User-Agent: из текущего запроса, если он есть.

PHP: обработка HTTP запросов

© НГУЭУ 2013

Слайд 6

Установка ключиков функцией setcookie() bool setcookie ( string $name , string

Установка ключиков функцией setcookie()

bool setcookie ( string $name , string $value,

int $expire = 0 , string $path, string $domain, bool $secure = false) - задает cookie, которое будет передано клиенту вместе с другими HTTP заголовками. Все передаваемые параметры соответствуют параметрам HHTP заголовка, устанавливающего ключик.
Как и любой другой заголовок, cookie должны передаваться до того как будут выведены какие-либо другие данные скрипта (это ограничение протокола). Это значит, что в скрипте вызовы этой функции должны располагаться прежде остального вывода, включая вывод тэгов и , а также пустые строки и пробелы.
После передачи клиенту cookie станут доступны через массивы $_COOKIE при следующей загрузке страницы. Значения cookie также есть в $_REQUEST

PHP: обработка HTTP запросов

© НГУЭУ 2013

Слайд 7

Установка ключиков функцией setcookie() + expire - время, когда срок действия

Установка ключиков функцией setcookie() +

expire - время, когда срок действия cookie

истекает в количестве секунд с начала эпохи. Можно задавать это время с помощью функции time(), прибавляя время в секундах, через которое срок действия cookie должен истечь. Если задать 0 или пропустить этот аргумент, срок действия cookie истечет с окончанием сессии (при закрытии броузера). Преобразование к необходимому формату функция выполняет автоматически.

PHP: обработка HTTP запросов

© НГУЭУ 2013

Слайд 8

Отправка HTTP заголовка с помощью header() void header ( string $hstr

Отправка HTTP заголовка с помощью header()

void header ( string $hstr [,

bool $replace = true] ) - используется для отправки HTTP заголовка
hstr – строка заголовка Content-Type: text/plain
replace - флаг замены. Если установить в FALSE, можно задать несколько однотипных заголовков
в скрипте должна следовать до любого вывода, формирующего тело сообщения!!!
header (“location: file.html”);

PHP: обработка HTTP запросов

© НГУЭУ 2013

Слайд 9

Чтение заголовков через headers_list() array headers_list ( void ) возвращает список

Чтение заголовков через headers_list()

array headers_list ( void ) возвращает список заголовков,

передаваемых браузеру / клиенту.
возвращает нумерованный массив заголовков
для того чтобы определить были ли переданы уже переданы заголовки используется функция headers_sent(). Функция обычно используется без параметров и возвращающает значение булева типа

PHP: обработка HTTP запросов

© НГУЭУ 2013