Вызов конкретной функции PHP в форме submit

Я пытался вызвать определенную функцию php при отправке формы, и скрипты формы и php находятся на одной странице. Мой код ниже. (Он не работает, поэтому мне нужна помощь)

<html> <body> <form method="post" action="display()"> <input type="text" name="studentname"> <input type="submit" value="click"> </form> <?php function display() { echo "hello".$_POST["studentname"]; } ?> </body> </html> 

Related of "Вызов конкретной функции PHP в форме submit"

В следующей строке

 <form method="post" action="display()"> 

действие должно быть именем вашего скрипта, и вы должны вызвать функцию, что-то вроде этого

 <form method="post" action="yourFileName.php"> <input type="text" name="studentname"> <input type="submit" value="click" name="submit"> <!-- assign a name for the button --> </form> <?php function display() { echo "hello ".$_POST["studentname"]; } if(isset($_POST['submit'])) { display(); } ?> 

вам не нужен этот код

 <?php function display() { echo "hello".$_POST["studentname"]; } ?> 

Вместо этого вы можете проверить, отправляется ли форма, проверяя переменные post с помощью isset .

здесь идет код

 if(isset($_POST)){ echo "hello ".$_POST['studentname']; } 

нажмите здесь, чтобы получить руководство по php для isset

Предполагая, что ваш скрипт называется x.php, попробуйте это

 <?php function display($s) { echo $s; } ?> <html> <body> <form method="post" action="x.php"> <input type="text" name="studentname"> <input type="submit" value="click"> </form> <?php if($_SERVER['REQUEST_METHOD']=='POST') { display(); } ?> </body> </html> 

PHP запускается на сервере, ваш браузер – клиент. Как только сервер отправляет всю информацию клиенту, на сервере не может быть сделано ничего, пока не будет сделан другой запрос.

Чтобы сделать другой запрос, не обновляя страницу, вам придется заглянуть в ajax. Посмотрите на jQuery, поскольку он упрощает запросы ajax

Если вы хотите вызвать функцию при нажатии кнопки отправки, то у вас есть
для использования ajax или jquery, если вы хотите вызвать свою php-функцию после отправки формы, вы можете сделать это как:

 <html> <body> <form method="post" action="display()"> <input type="text" name="studentname"> <input type="submit" value="click"> </form> <?php function display() { echo "hello".$_POST["studentname"]; } if($_SERVER['REQUEST_METHOD']=='POST') { display(); } ?> </body> </html> 

Напишите этот код

 <?php if(isset($_POST['submit'])){ echo 'Hello World'; } ?> <html> <body> <form method="post"> <input type="text" name="studentname"> <input type="submit" name="submit" value="click"> </form> </body> </html>