Главная

Добавить
статью


Форум


Новости


RSS


Обратная
связь
друзья


реклама



Для вебмастера » Уроки, обучениеМетод POST

Добавил Admin | 4-02-2011, 18:56 | Мнений: 0 | Заглянули 3236

 

Метод POST
 

 

В предыдущем уроки, мы уже разобрали один метод передачи данных метод GET. Сегодня обсудим, как работает метод POST и собственно чем он отличается и зачем нужен. Я когда начинал изучать PHP не очень понимал разницу и поэтому первое время пользовался исключительно методом POST, потому что метод GET, для меня казался китайской грамотой, все эти амперсанды (&) и знаки вопроса, переменные и их значения, с трудом доходили до меня. С другой стороны был в PHP метод POST, который скрывал все эти непонятные знаки в своём теле, т.е. в URL ни чего не выводил и поэтому казался проще.

И так что мы имеем, главное отличия метода POST от метода GET это то, что он скрывает все передаваемые им переменные и их значения, в своём теле. Это главное отличие и оно важно при создании приложений. При таком подходе скрыта реализация приложения, не видны переменные, которые вы используете в работе данной программы. Нет возможности подменить значения переменной в URL и тем самым отправить на сервер (злоумышленником), заведомо не ликвидные данные, что в свою очередь может привести к сбою в работе скрипта, или полной остановки и потери информации.
Второе существенное отличие метода POST от метода GET - вся передаваемая информация, как известно имеет свой объём (вес). Так вот в GET этот объём ограничен 8 КБ. Метод POST таких ограничений не имеет.
При разработки и отладки приложений, чаще используют метод GET. При завершении и выпуске приложения в свет, лучше изменить представление на метод POST, в целях безопасности и неограниченности объёма (без фантазий) передачи информации.

Листинг № 1 - Пример передачи данных между страницами - метод POST.

<form name="form1" method="post" action="post.php">
  Введите текст:<br />
<textarea name="text" cols="80" rows="10"></textarea>
<br />
<br />
<input name="" type="submit" value="Отправить"/>
</form>
В примере выше представлена форма отправки данных используя метод POST. Это можно увидеть в открывающем теги form , атрибут method="post". Написание не имеет особого значения, нижний регистр букв используется или верхний. 
Ещё важный аргумент тега form1, это аргумент action="post.php". Action - служит для указания пути до обработчика, т.е. куда будут отправлены данные вписанные в эту форму. Имеющую имя в данном скрипте form1, но для нас сейчас это не имеет ни какого значения. Хочу лишь сказать, что именование всех объектов web-страницы в PHP, осуществляется путём присвоения атрибуту name имени. По сути это именование переменной. Форма в которую вы вводите данные есть переменная и у неё должно быть имя, для того чтоб можно было с помощью скрипта обращаться к ней.
Разберём теперь обработчик, который в данном примере, выполняет функцию приёма данных и вывода их на монитор. Делается это с помощью глобального массива - так называются группа переменных в PHP. C ними мы будем знакомиться позже на страницах сайта detirisuyut.ru . Пока же только запомните синтаксис их написания, в смысле глобального массива.
При использовании метода POST, правильное написание глобального массива, выглядит так:
  $_POST[]
В примере выше представлен глобального массива POST - это мы можем видеть по его имени, после знака подчёркивания. В квадратных скобках, в данном случаи нет значения, поэтому массив можно считать пустым. При отправки данных методом POST всегда все отправленные переменные и их значения, будут содержаться в этом глобальном массиве ($_POST[]). И только при обращении к нему вы сможете получить отправленные данные с одной страницы на другую.
При работе приложения может происходить так, что одна и та же переменная отправляется разными способами, используя методы POST и GET. В этом случаи целесообразно использовать глобальный массив $REQUEST[], который сам определяет какой метод был применён для отправки данных.

Листинг № 2 - Выводим данные на монитор метод POST. Файл post.php

<?php 

  
echo $_POST['text'];

?>
Листинг №2 показывает обработчик формы. В глобальном массиве POST, в квадратных скобках мы видим имя переменной - именно так скрипт понимает, что нужно выводить на монитор $_POST['text']. В первом листинге мы именовали форму, назвав переменную text (name="text"). Форма содержащая текст получила имя text.
Чтобы вывести на монитор отправленные данные, достаточно просто прописать имя переменной в квадратных скобках глобального массива POST.

Урок закончен.

Взято с lphp.ru
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

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

Оставить комментарий


популярное



календарь



опрос



счетчики



Реклама



Логин: (регистрация? Пароль (забыл?):