Как вы получаете данные при нажатии кнопки отправки формы?

#php #forms #post

#php #формы #Публикация

Вопрос:

После того, как я добавлю кнопку и текстовое поле, как я могу запрограммировать эту кнопку, чтобы она просто брала то, что находится в текстовом поле, и помещала это в переменную? Я понятия не имею, как работает событие нажатия кнопки.

 <form id="form1" name="form1" method="post" action="">
  <label>
    <input type="submit" name="Searchbydistro" id="Searchbydistro" value="Submit" onclick="xxxxxxxxx " />
  </label>
  <label>
    <input type="text" name="txtboxsearchbydistro" id="txtboxsearchbydistro" />
  </label>
</form>
  

Могу ли я поместить оператор PHP в пространство, где находится xxxxxxxx ?

Любая помощь была бы отличной!

Комментарии:

1. Это был бы JavaScript, а не PHP. PHP будет обрабатывать данные формы, если вы разрешите кнопке отправки перезагрузить страницу. Событие onclick будет обрабатываться функциями JavaScript.

Ответ №1:

Вы не можете выполнить PHP-код в операторах onclick(), потому что PHP выполняется на сервере до отправки страницы в браузер, а функция onclick() выполняется в браузере.

Решением было бы (предполагая, что эта страница form.php ) установите действие формы для «form.php » и на этой странице есть

 if(isset($_POST)){
   $variable = $_POST['txtboxsearchbydistro'];
   // Here you can run validation on $variable, sanitize it and pass it to a DB query
}
  

Комментарии:

1. Очевидно, что это только пример… Передача переменной $ в вашу базу данных может нанести большой ущерб при внедрении SQL. Тем не менее, это отличное начало.

2. Абсолютно, согласен. Для простоты я удалил это, однако я просто отредактировал строку комментария, чтобы отразить надлежащую процедуру

Ответ №2:

Нет, php на стороне сервера, а onClick — событие на стороне клиента.

Я не совсем уверен, чего вы пытаетесь достичь. Если вы хотите отправить свое значение txtboxsearchbydistro какому-либо PHP-скрипту, вы бы указали что-то вроде этого:

<form id="form1" name="form1" method="post" action="somePhpScript.php">

Тогда вы бы использовали что-то вроде того, что предложил Бобби.

Если вы хотите что-то сделать перед фактической отправкой формы, или вы хотите что-то сделать на стороне клиента (т. Е. в браузере посетителя), вам нужно будет сделать что-то вроде

<input type="submit" name="Searchbydistro" id="Searchbydistro" value="Submit" onclick="myScript();" />

Затем вам может потребоваться определить свой скрипт и присвоить ему свое значение.

Надеюсь, это поможет.

Комментарии:

1. Спасибо! Я начинаю разбираться в этом бизнесе на стороне клиента и сервера!