У меня есть форма с кнопками «Принять» и «Отклонить». Когда я отправляю форму, я хочу видеть, был ли заказ принят или отклонен. Я знаю, как это делать, но почему-то не получилось.
ФОРМА:
<form action = "{{ url('edi')}}/lv/{{ $customer->name }}" method = "POST" class = "form-inline">
{{ csrf_field() }}
<input type = "hidden" name = "file" value = "{{ $edifile }}">
<input type = "hidden" name = "doctype" value = "order">
<select name = "ordertype" class = "form-control">
...
</select>
<input type = "submit" class = "btn btn-warning" name = "accept" value = "Accept order">
<input type = "submit" class = "btn btn-danger" name = "decline" value = "Decline order" onclick = "confirm('Are you sure you want to DECLINE this order!');">
</form>
Пакет параметров запроса:
+request: ParameterBag {#41 ▼
#parameters: array:4 [▼
"_token" => "bW5ancRgkgvFovCeQuVxzOiXIu75ng6zl5NYlEyc"
"file" => "ORDER_20170706122126714_P2576090-1.xml"
"doctype" => "order"
"ordertype" => "0"
]
}
Как видите, в запросе нет имени кнопки отправки.






Пока я писал этот вопрос, я сам обнаружил проблему:
В основном проблема заключалась в том, что при отправке формы у нас есть сценарий, который отключает все кнопки отправки в форме, поэтому пользователь не может отправить одну и ту же форму дважды. Все звучит нормально, пока мы не поймем - отключенные элементы не отправляются "
Решение:
Я изменил скрипт так, чтобы он создавал input type = "hidden" с именем первоначально нажатой кнопки.
P.S. В принятом ответе есть хорошее "практическое правило", я его прочитал, и вам тоже следует, если вы еще этого не сделали: Как узнать, какая кнопка была нажата при отправке формы PHP?