Следует также отметить, что именованный ввод type = "submit" будет также отправлен вместе с именованными полями другой формы, в то время как именованный ввод type = = button "не будет.
Другими словами, в приведенном ниже примере именованный ввод name=button1
БЕЗ будет отправлен, а именованный ввод name=submit1
БУДЕТ .
Пример HTML-формы (index.html):
<form action="checkout.php" method="POST">
<!-- this won't get submitted despite being named -->
<input type="button" name="button1" value="a button">
<!-- this one does; so the input's TYPE is important! -->
<input type="submit" name="submit1" value="a submit button">
</form>
PHP-скрипт (checkout.php), который обрабатывает действие вышеуказанной формы:
<?php var_dump($_POST); ?>
Проверьте вышеупомянутое на вашем локальном компьютере, создав два файла в папке с именем / tmp / test /, а затем запустив встроенный веб-сервер PHP из оболочки:
php -S localhost:3000 -t /tmp/test/
Откройте браузер на http://localhost:3000 и убедитесь сами.
Можно задаться вопросом, зачем нам отправлять именованную кнопку? Это зависит от серверного сценария. Например, плагин WooCommerce WordPress не будет обрабатывать размещенную страницу Checkout, если только не будет отправлена именованная кнопка Place Order
. Если вы измените его тип с submit на button , то эта кнопка не будет отправлена и, следовательно, форма Checkout никогда не будет обработана.
Возможно, это маленькая деталь, но вы знаете, дьявол кроется в деталях.