/html/button/formmethod:> Метод отправки данных формы_

Атрибут formmethod

Синтаксис

HTML
<button formmethod="[значение]"> ... </button>

Описание

Атрибут / параметр formmethod (от англ. "form method" ‒ «метод формы») указывает метод отправки данных формы на сервер.


Поддержка браузерами

Chrome
Поддерж.
Firefox
Поддерж.
Opera
Поддерж.
Maxthon
Поддерж.
IExplorer
Поддерж.
Safari
Поддерж.
iOS
Поддерж.
Android
Поддерж.

Спецификация

Верс. Раздел
HTML
2.0 ---
3.2 ---
4.01 17.5 The BUTTON element
5.0 4.10.19.6 Form submission
...and formmethod content...
5.1 4.10.19.6. Form submission
...and formmethod content...
XHTML
1.0 Extensible HyperText Markup Language
1.1 Extensible HyperText Markup Language

Значения

get
Объединяет данные формы в одну строку, присоединяет полученную строку к URL-адресу обработчика формы (указывается в атрибуте «action» или «formaction») и с помощью полученного URL-адреса передаёт данные формы на сервер.
<form action="http://www.example.com/script/index.php">
<p><label>Фамилия: <input type="text" name="family"></label></p>
                   <!-- Введено значение «ivanov» -->
<p><label>Имя: <input type="text" name="name"></label></p>
               <!-- Введено значение «ivan» -->
<button type="submit" formmethod="get"> Отправить </button>
</form>

В итоге получится:

http://www.example.com/script/index.php?family=ivanov&name=ivan

Плюсы и минусы метода

Плюсы:

  • Позволяет быстро получать результаты передачи форм с небольшим количеством коротких полей.

Минусы:

  • Некоторые сервера ограничивают длину URL-адреса с аргументами (обрезают URL-адрес);
  • Передача личных данных (пароли, номера кридитных карт и т.д.) с помощью данного метода является небезопасной, так как данные передаваемые этим методом могут быть легко перехвачены.
post
Браузер устанавливает связь с сервером, на котором находится обработчик данных формы (URL-адрес обработчика указывается в атрибуте «action» или «formaction») и после установки связи передаёт (в отдельном сеансе связи) данные на сервер.

Плюсы и минусы метода

Плюсы:

  • В отличие от метода «get» данный метод является более безопасным методом передачи личных данных;
  • Может передавать на сервер большие объёмы данных формы.

Минусы:

  • Требуется определённый опыт в создании соответствующих обработчиков формы.
dialog
Предполагает, что форма с данными находится в диалоговом окне (элемент dialog), которое должно быть закрыто после отправки данных на сервер.

Значение по умолчанию: «get».


Пример использования

Листинг кода
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Параметр formmethod (Элемент button)</title>
</head>
<body>
<h1>Пример использования атрибута "formmethod"</h1>
<form action="/examples/php-scripts/FIE.php">
<p><label>Введите ваше имя: <input type="text" name="first_name"></label></p>
<p><button type="submit" formmethod="get"> Отправить </button></p>
</form>
</body>
</html>
Параметр formmethod (Элемент button)