Метод POST и GET в PHP

Для передачи данных в языке программирования PHP используют специальные методы - GET и POST.

Метод GET


Метод GET - передает необходимые данные в явном виде, в URL адресе. Чтобы было понятно, это выглядит как то так:
Пример GET запроса


В GET запросе, в приведенном примере сверху, передаются 2 параметра - id со значением 1 и lang со значением php. В PHP скрипте эти параметры можно получить следующим образом:
<?
$id = $_GET['id']; // Значение параметра id
$lang = $_GET['lang']; // Значение параметра lang
?>


Метод POST


Метод POST - используется для передачи данных в http-заголовках Вашего сайта. Для пользователя будет не видны эти данные во время передачи, в отличии от GET запроса.

С POST запросом Вы уже встречались в уроке Формы для отправки данных. Тэг <form>

POST запрос в HTML верстке выглядит так:
<form action="script.php" enctype="multipart/form-data" method="POST">
<input type="text" name="id">
<input type="text" name="lang">
<input type="submit">
</form>

Значения из данной формы передаются с помощью кнопки input с типом submit.

Получить данные POST запроса в PHP скрипте, можно так:
<?
$id = $_POST['id']; // Значение параметра id
$lang = $_POST['lang']; // Значение параметра lang
?>


Напомню, в параметре action указывается адрес скрипта, к которому будет идти POST запрос. В параметре enctype указывается тип передаваемых данных, в данном случае значение "multipart/form-data" означает любой тип данных (включая файлы, текст и т.д.).

При передаче с помощью POST и GET запросов очень важно не забывать про установку правильной кодировки в файлах, связанных с этими запросами.