Как вы получаете данные, когда вы нажимаете кнопку отправки формы? - PullRequest
0 голосов
/ 11 ноября 2011

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

<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?

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

Ответы [ 2 ]

3 голосов
/ 11 ноября 2011

Вы не можете выполнить код 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
}
0 голосов
/ 11 ноября 2011

Нет, 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();" />

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...