Атрибут method
Синтаксис
(X)HTML
<form action="..." method="[значение]"> ... </form>
Описание
Атрибут / параметр method
(от англ. "method" ‒ «метод») указывает метод отправки данных формы на сервер.
Поддержка браузерами
Chrome
Поддерж.
Firefox
Поддерж.
Opera
Поддерж.
Maxthon
Поддерж.
IExplorer
Поддерж.
Safari
Поддерж.
iOS
Поддерж.
Android
Поддерж.
Спецификация
Верс. | Раздел | |
---|---|---|
HTML | ||
2.0 | Form: FORM | Перевод |
3.2 | FORM | |
4.01 | 17.3 The FORM element method = get|post [CI]... DTD: Transitional
Strict
Frameset
|
|
5.0 | 4.10.19.6 Form submission The method and... |
|
5.1 | 4.10.19.6. Form submission The method and... |
|
XHTML | ||
1.0 | Extensible HyperText Markup Language DTD: Transitional
Strict
Frameset
|
|
1.1 | Extensible HyperText Markup Language |
Значения
- get
- Объединяет данные формы в одну строку, после чего присоединяет полученную строку к URL-адресу обработчика формы (указывается в атрибуте «
action
» или «formaction
») и с помощью полученного URL-адреса передаёт данные формы на сервер.<form action="http://example.com/handler.php" formmethod="get"> <p><label>Фамилия: <input type="text" name="family"></label></p> <!-- Введено значение ivanov --> <p><label>Имя: <input type="text" name="name"></label></p> <!-- Введено значение ivan --> <button type="submit"> Отправить </button> </form>
В итоге получится:
http://www.example.com/script/index.php?family=ivanov&name=ivan
Плюсы метода:
- Позволяет быстро получать результаты передачи форм с небольшим количеством коротких полей.
Минусы метода:
- Некоторые сервера ограничивают длину URL-адреса с аргументами;
- Передача личных данных (пароли, номера кридитных карт и так далее) с помощью данного метода является небезопасной, так как данные передаваемые этим методом могут быть легко перехвачены.
- post
- Браузер устанавливает связь с сервером, на котором находится обработчик данных формы (URL-адрес обработчика указывается в атрибуте «
action
» или «formaction
») и после установки связи передаёт (в отдельном сеансе связи) данные на сервер.Плюсы метода:
- В отличие от метода «
get
» данный метод является более безопасным методом передачи личных данных; - Может передавать на сервер большие объёмы данных формы.
Минусы метода:
- Требуется определённый опыт в создании соответствующих обработчиков формы.
- В отличие от метода «
- dialog
- Предполагает, что форма с данными находится в диалоговом окне (элемент
dialog
), которое должно быть закрыто после отправки данных на сервер.
Значение по умолчанию: «get
».
Пример использования
Листинг кода
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Параметр method (Элемент form)</title>
</head>
<body>
<h1>Пример с атрибутом "method"</h1>
<form action="/examples/php-scripts/coffee.php" method="post">
<fieldset> <legend><b>Вы любите кофе с молоком?</b></legend>
<label><input type="radio" name="coffee" value="yes"> да</label>
<label><input type="radio" name="coffee" value="no"> нет</label>
</fieldset>
<p><input type="reset"> <input type="submit"></p>
</form>
</body>
</html>
<html>
<head>
<meta charset="utf-8">
<title>Параметр method (Элемент form)</title>
</head>
<body>
<h1>Пример с атрибутом "method"</h1>
<form action="/examples/php-scripts/coffee.php" method="post">
<fieldset> <legend><b>Вы любите кофе с молоком?</b></legend>
<label><input type="radio" name="coffee" value="yes"> да</label>
<label><input type="radio" name="coffee" value="no"> нет</label>
</fieldset>
<p><input type="reset"> <input type="submit"></p>
</form>
</body>
</html>
Параметр method (Элемент form)