Вопрос:
У меня есть кнопка в моей форме. Я хочу проверить, было ли это нажато или нет. Я пробовал вот так:
<input type=»button» name=»btn» id=»btn» class=»btn1″ value=»Creaza Sondaj» /> if (isset($_POST[‘btn’]))
Но этот метод работает только для кнопок отправки. Как проверить, нажата ли кнопка?
Ответ №1
Если вы хотите обработать нажатие кнопки с PHP, измените его тип для submit.
В противном случае обработайте событие click с помощью JavaScript.
Ответ №2
Вы должны использовать $ _POST, т.е. Внесите вашу форму на страницу с помощью:
<?php if (isset($_POST[‘btn’]))
В противном случае вы можете использовать JavaScript/jQuery, например:
<input type=»button» name=»btn» id=»btn» class=»btn1″ value=»Creaza Sondaj» /> <script> $(‘#btn’).click(function(){ // do something }); </script> Ответ №3
То, что вы можете сделать, это нажать кнопку, добавить скрытое поле ввода в вашу форму с помощью javascript. Это скрытое поле не будет отображаться для пользователя, но как только форма будет отправлена, ваш PHP сможет прочитать значение этого ввода. Если это значение существует, кнопка была нажата.
Вот пример jQuery –
$(‘#btn’).on(‘click’,function(){ $(‘#form’).append(‘<input type=»hidden» name=»form_data[btn]» value=»btn_clicked!» />’); });
Вот пример “сырого” JavaScript, выполните этот код с событием onclick –
var newInput = document.createElement(‘input’); newInput.innerHTML = ‘<input type=»hidden» name=»form_data[btn]» value=»btn_clicked!» />’; document.getElementById(‘form_id’).appendChild(newInput);
Обязательно укажите атрибут имени, чтобы вы знали, где искать значения в вашем PHP.