Метод POST в PHP как главное средство передачи данных на сервер

Метод POST в PHP как главное средство передачи данных на сервер

От автора: POST сдал – POST принял! Наверное, служившие в армии подумают, что мы будем играть в войнушки. С армией у нас и так все в порядке, а вот с передачей данных в Сети не так все хорошо. Нужно знать, когда использовать метод POST в PHP, а когда GET.

Различия в примерах

Для начала создадим экспериментальную форму, с помощью которой будем тестировать оба метода. Именно формы чаще всего используются для сбора данных и пересылки их на сервер. Разметка простейшей:

<html>
<head>
  <title></title>
</head>

<body>
<form name="sample_form" method="get" action="chernovik.php">
<label>Представьтесь, пожалуйста: </label> </br>
</br>
<input type="text" size="25" name="fio" /></br>
</br>
<input type="submit" />
</form>
</body>

</html>

Метод POST в PHP как главное средство передачи данных на сервер

Код обработчика:


<?php

echo "Приветствую тебя, ".$_GET["fio"]."<br>";

?>

О прикладном протоколе HTTP много говорить не буду. Упомяну лишь, что он предоставляет несколько методов для указания того ресурса, к которому направлен запрос. Чаще всего для доставки информации на сервер используются передача методом POST в PHP или GET. Метод передачи прописывается в атрибуте веб-формы method.

Метод POST в PHP как главное средство передачи данных на сервер

Сначала GET, а потом POST

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

Метод POST в PHP как главное средство передачи данных на сервер

Как видите, с помощью GET значения переменных передаются в URL. Что плохо, если вы пересылаете на сервер конфиденциальные данные. Теперь пробуем POST. В коде обработчика будет использовать глобальный массив _POST:

Метод POST в PHP как главное средство передачи данных на сервер

Мы убедились, что этот метод передает данные на сервер не через URL, а в теле запроса. Теперь разберемся, как с помощью PHP отправить POST методы.

Без форм

При передаче данных можно обойтись и без веб-форм. Следующий пример иллюстрирует, как достичь такого же эффекта средствами cURL. Думаю, разобраться вам не составит большого труда. Код первого скрипта:


<?php
    $seans = curl_init();
    curl_setopt($seans, CURLOPT_URL, 'http://localhost/chernovik2.php');
    curl_setopt($seans, CURLOPT_RETURNTRANSFER,true);
    curl_setopt($seans, CURLOPT_POSTFIELDS, "a=5&b=5");
    $vozvrat_res = curl_exec($seans);
    echo $vozvrat_res;
    curl_close($seans);

?>

Код обработчика:

 <?php
  $s = $_POST['s'];
  $d = $_POST['d'];
  echo $s*$d;
?>

Получаем результат – произведение переданных переменных:

Метод POST в PHP как главное средство передачи данных на сервер

Также для передачи параметров по ссылке методом POST в PHP можно использовать в форме код JavaScript. А на сегодня все – я свой пост сдал :) .

Самые свежие новости IT и веб-разработки на нашем Telegram-канале

Курс по Drupal. Основы

Прямо сейчас посмотрите курс по Drupal!

Смотреть курс

Метки:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree