Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Метод submit() не передает массив $_POST (https://javascript.ru/forum/misc/29233-metod-submit-ne-peredaet-massiv-%24_post.html)

bes 20.06.2012 22:59

Кстати, только что заметил комментарий devote, пардон :).
devote, если в post-запросе ничего не приходит, то что тогда понимать под отправкой формы - сам переход?

devote 20.06.2012 23:05

Цитата:

Сообщение от bes
то что тогда понимать под отправкой формы - сам переход?

конечно, это же пустой запрос.. по сути в заголовках указано POST но нет данных.. А уж как это воспринять решать серверной стороне. Но так же не забываем про $_FILES в нем тоже могут быть данные при отправке файлов POST-запросом

bes 20.06.2012 23:13

devote, спасибо, ценная информация.

ZaValera 21.06.2012 14:39

Предлагаю подвести итог.
1.Если передавать форму методом submit(), то в массиве $_POST содержатся следующие типы при наличии атрибута name:
text - не зависимо от содержания
radio - если был checked
checkbox - если был checked
hidden
textarea - не зависимо от содержания
select - при наличии хотя бы одного option

2.Если передавать форму кнопкой submit, то к перечисленным элементам добавляется как раз эта кнопка submit.

Примечание:
input-ы типа button и reset НЕ ПЕРЕДАЮТСЯ никогда.
$_FILES передается нормально в обоих случаях.

cmd 21.06.2012 15:03

Цитата:

Сообщение от bes (Сообщение 182854)
а input type="submit" также игнорирует кнопочные элементы, но отправляет своё value.
В этом наверное и правило.

Я так понимаю, это в спецификации HTML5 звучит так "про button":
Цитата:

The following content attributes must not be specified and do not apply
И про "do not apply":
Цитата:

When an attribute doesn't apply to an input element, user agents must ignore the attribute, regardless of the requirements and definitions below.
Логично?

bes 21.06.2012 16:02

cmd, первое, на мой взгляд, просто говорит о том, какие атрибуты не рекомендуется применять, а второе тоже вроде не об этом, так как value кнопки type="button" не входит в список атрибутов, которые не рекомендуется применять (без value нельзя было бы поменять имя у этой кнопки).


Часовой пояс GMT +3, время: 14:09.