PHP 表单 - 提交时停留在同一页面

新手上路,请多包涵

我有一个位于文件 contact.html 上的 PHP 表单。

该表格是从文件 processForm.php 处理的。

当用户填写表格并单击提交时, processForm.php 发送电子邮件并将用户定向到 processForm.php 并在该页面上显示一条消息“成功!您的消息已发送。 “

我对 PHP 了解不多,但我知道要求这样做的操作是:

 // Die with a success message
die("<span class='success'>Success! Your message has been sent.</span>");

如何在不重定向到 processForm.php 页面的情况下将消息保留在表单 div 中?

如果需要,我可以发布整个 processForm.php ,但它很长。

原文由 mewebs 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 522
1 个回答

为了在提交时保持在同一页面上,您可以将 action 留空 ( action="" ) 到表单标签中,或者将其完全省略。

对于消息,创建一个变量 ( $message = "Success! You entered: ".$input;" ),然后在页面中您希望消息显示的位置回显变量 <?php echo $message; ?>

像这样:

 <?php
$message = "";
if(isset($_POST['SubmitButton'])){ //check if form was submitted
  $input = $_POST['inputText']; //get input text
  $message = "Success! You entered: ".$input;
}
?>

<html>
<body>
<form action="" method="post">
<?php echo $message; ?>
  <input type="text" name="inputText"/>
  <input type="submit" name="SubmitButton"/>
</form>
</body>
</html>

原文由 Tom Groot 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题