Что использовать вместо if (isset ($ _ POST ['submit'])) для this.form.submit ()? - PullRequest
3 голосов
/ 20 марта 2010

Я хочу запустить определенный блок PHP, если пользователь отправляет форму.Это работает, если я использую кнопку отправки с name = "submit" и:

<?php
if(isset($_POST['submit'])) {
code to run
}
?>

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

<select name="dropdownname" onchange="this.form.submit()">

, появится форма (я ее не проверял) для отправки, если пользователь изменит выбор раскрывающегося списка.Однако, если я это сделаю, PHP-код if (isset ($ _ POST ['submit'])) не будет запущен.Могу ли я написать оператор PHP if, который будет отвечать на отправляемую форму, даже если она отправляется с помощью изменения в раскрывающемся списке, а не кнопки отправки?

Ответы [ 5 ]

7 голосов
/ 20 марта 2010

Вы можете проверить непосредственно для:

if(isset($_POST['dropdownname']))
1 голос
/ 08 апреля 2011

Даже вы можете использовать что-то вроде:

 if(count($_POST)){
 // form validation
 } else {
 //...
 }
0 голосов
/ 20 марта 2010
<?php

if(!empty($_POST))
{
    code to run
}

?>
0 голосов
/ 20 марта 2010

И если этот раскрывающийся список используется для отображения некоторых данных, а не для записи в базу данных, следует использовать метод GET.

0 голосов
/ 20 марта 2010

вы всегда должны проверять $ _SERVER ['REQUEST_METHOD'] вместо определенного имени поля

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