PHP уроки
ПРОСТО самая лучшая обучалка PHP!
  • Студия LPHPRU
  • Уроки PHP
  • Контакты
  • Помощь
Меню
  • PHP - с чего начать?
  • Уроки PHP
  • Функции PHP
  • Массивы
  • Denwer
  • MySQL
  • Информация
  • Dreamweaver уроки
  • JQuery уроки
  • Галерея
  • OpenCart
Календарь
Февраль (2023)
ПнВтСрЧтПтСбВс
  12345
6789101112
13141516171819
20212223242526
2728     
В продаже

  • Что нового?

    • Тест №2
    • Тест №1 для разработчиков
    • PHP 5.6 RC1
    • SQL. Как cкопировать данные одной колонки в другую, в той же таблице
    • GRUB изменить порядок загрузки OS в Linux
    • SSH - вход на сервер без ввода пароля
    • PhpMyAdmin - проблема с загрузкой большого файла на сервер
  • Комментарии

    • Hello
    • тут нечего не понятно
    • Может уже пора на WebStorm переходит...
    • Здравствуйте. 10 лет пользуюсь др...
    • Была такая проблема, решалась пе...
  • TOP-5

    • Метод POST (2945468 )
    • Привет, МИР! (910788 )
    • Метод GET (667156 )
    • Операторы (605670 )
    • Firefox уже запущен, но не отвечает... (352940 )

Метод POST

Главная» Array » Метод POST
PHP урок № 298
Метод POST
Follow @lphpru

В предыдущем уроки, мы уже разобрали один метод передачи данных метод GET. Сегодня обсудим, как работает метод POST и собственно чем он отличается и зачем нужен. Я когда начинал изучать PHP не очень понимал разницу и поэтому первое время пользовался исключительно методом POST, потому что метод GET, для меня казался китайской грамотой, все эти амперсанды (&) и знаки вопроса, переменные и их значения, с трудом доходили до меня. С другой стороны был в PHP метод POST, который скрывал все эти непонятные знаки в своём теле, т.е. в URL ни чего не выводил и поэтому казался проще.
И так что мы имеем, главное отличия метода POST от метода GET это то, что он скрывает все передаваемые им переменные и их значения, в своём теле. Это главное отличие и оно важно при создании приложений. При таком подходе скрыта реализация приложения, не видны переменные, которые вы используете в работе данной программы. Нет возможности подменить значения переменной в URL и тем самым отправить на сервер (злоумышленником), заведомо не ликвидные данные, что в свою очередь может привести к сбою в работе скрипта, или полной остановки и потери информации.
Второе существенное отличие метода POST от метода GET - вся передаваемая информация, как известно имеет свой объём (вес). Так вот в GET этот объём ограничен 8 КБ. Метод POST таких ограничений не имеет.
При разработке и отладке приложений, чаще используют метод GET. При завершении и выпуске приложения в свет, лучше изменить представление на метод POST, в целях безопасности и неограниченности объёма (без фантазий) передачи информации.
Ну и наверно самый определяющий фактор в каких случаях применять метод POST.
Листинг № Array - Пример передачи данных между страницами - метод 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". Написание не имеет особого значения, нижний регистр букв используется или верхний. Что такое регистр, можно узнать из урока Регистр букв. Если не прописать метод, то браузер по умолчанию будет использовать метод GET.
Ещё важный аргумент тега form, это аргумент action="post.php". Action - служит для указания пути до обработчика, т.е. куда будут отправлены данные вписанные в эту форму. Имеющую имя в данном скрипте form, но для нас сейчас это не имеет ни какого значения. Хочу лишь сказать, что именование всех объектов web-страницы в PHP, осуществляется путём присвоения атрибуту name имени. По сути это именование переменной. Форма в которую вы вводите данные есть переменная и у неё должно быть имя, для того чтоб можно было с помощью скрипта обращаться к ней. О переменных можно почитать в уроке Переменные в PHP.
Разберём теперь обработчик, который в данном примере, выполняет функцию приёма данных и вывода их на монитор. Делается это с помощью глобального массива - так называются группа переменных в PHP. C ними мы будем знакомиться позже на страницах сайта LPHP.RU. Пока же только запомните синтаксис их написания, в смысле глобального массива.
При использовании метода POST, правильное написание глобального массива, выглядит так:
  $_POST[]
В примере выше представлен глобальный массив POST - это мы можем видеть по его имени, после знака подчёркивания. В квадратных скобках, в данном случаи нет значения, поэтому массив можно считать пустым. При отправки данных методом POST всегда все отправленные переменные и их значения, будут содержаться в этом глобальном массиве ($_POST[]). И только при обращении к нему вы сможете получить отправленные данные с одной страницы на другую.
При работе приложения может происходить так, что одна и та же переменная отправляется разными способами, используя методы POST и GET. В этом случаи целесообразно использовать глобальный массив $REQUEST[], который сам определяет какой метод был применён для отправки данных.
Листинг № Array - Выводим данные на монитор метод POST. Файл post.php
<?php 

  
echo $_POST['text'];

?>
Листинг №2 показывает обработчик формы. В глобальном массиве POST, в квадратных скобках мы видим имя переменной - именно так скрипт понимает, что нужно выводить на монитор $_POST['text']. В первом листинге мы именовали форму, назвав переменную text (name="text"). Форма содержащая текст получила имя text.
Чтобы вывести на монитор отправленные данные, достаточно просто прописать имя переменной в квадратных скобках глобального массива POST.
Урок можно скачать здесь.
Дополнительный материал по этой теме, можно найти в уроках:
Урок закончен.
SETTER © LPHP.RU
Администрация сайта
Array
Обсудить на форуме.
Урок седьмой. Include.
  • lphp.ru © 2009-2023