Совет 1: Как передать массив из HTML формы методом POST

Отправить форму методом POST очень просто. Для этого достаточно прописать тегам input и select атрибут name, а самой форме атрибуты action и method. Но как поступить, если нам нужно передать данные в виде не 10 переменных, а 1 массива с 10 значениями?

Для передачи данных методом POST в виде массива необходимо в атрибуте name указать название массива и ключ в квадратных скобках. Например:

  1. input type="text" name="order[number]"
  2. input type="text" name="order[registration_date]"

В данном примере мы передаем массив order с двумя ключами (number и registration_date), значения которых вводятся с клавиатуры.

Благодаря этому способу мы можем послать форму в виде массива order с любыми характеристиками (номер заказа, покупатель, дата оформления и т.д.). В случае с PHP, массив будет находиться в переменной $_POST['order'].

Через форму можно послать многомерный массив. Для этого нужно заключить в квадратные скобки каждый ключ:

  1. input type="text" name="form[order][number]"
  2. input type="text" name="form[order][number]"

Одним из главных плюсов данного способа является возможность передачи нескольких массивов данных. Например, если нам нужно передать данные о новом клиенте и новом заказе, мы можем послать скрипту 2 массива:

  1. input type="text" name="client[name]"
  2. input type="text" name="client[organization]"
  3. input type="text" name="order[product]"
  4. input type="text" name="order[quantity]"

После отправки формы массивы будут лежать в переменных $_POST['client'] и $_POST['order']. Получить значения этих массивов можно так:

  1. echo $_POST['client]['name'];
  2. echo $_POST['order']['product'];

 

Совет 2: Как отправить данные формы

Отправка данных из заполненной посетителем интернет-сайта формы - одна из наиболее часто решаемых задач интерактивного взаимодействия веб-серфера с серверными программами этого ресурса. Организация этой операции в исходном коде страницы гипертекста значительно проще, чем создание скриптов для обработки передаваемых данных. Она может быть реализована как средствами языка HTML, так и с использованием JavaScript-сценариев.
Инструкция
1
Если обработка данных осуществляется не в том же файле, который формирует страницу с формой, обязательно укажите в атрибуте action адрес скрипта-обработчика. Задайте один из двух возможных методов отправки переменных формы - Get или Post. Выбор зависит от того, который из них используется для чтения переменных скриптом. В принципе, этого достаточно для решения поставленной задачи, помещать в форму специальный элемент, инициирующий отсылку информации не обязательно, так как нажатие клавиши Enter по умолчанию эквивалентно щелчку по кнопке отправки данных. Однако не всякий пользователь догадается об этом, поэтому более предпочтительно поместить в форму соответствующую кнопку.
2
Используйте кнопку, которая формируется тегом input со значением submit в атрибуте type. Нажатие такой кнопки - «классический», наиболее часто используемый способ организации отправки данных из формы в веб-странице. Кроме атрибута type желательно указать значение атрибута name, а в value можно поместить текст надписи на кнопке. Например:<input type="submit" name="suBut" value="Отправь!" />
3
Можно использовать JavaScript-сценарий для отправки данных. Это может быть полезно в тех случаях, когда требуется организовать автоматическую отправку по какому-либо событию - например, после выбора пользователем нужного значения в выпадающем списке или если перед отправкой информации она должна быть проверена JavaScript-валидатором. Для реализации такого способа отсылки данных используйте метод submit объекта form. Скажем, если в атрибут name формы записано значение UniForm, то для имитации нажатия кнопки отправки данных в код JavaScript после всех необходимых действий с введенными пользователем значениями нужно поместить такую строку:document.UniForm.submit();
Поиск
Совет полезен?
Добавить комментарий к статье
Осталось символов: 500
к
Honor 6X Premium
новая премиальная версия
узнать больше