考虑问题 1
“成功提交”页面看起来漂亮又漂亮是标准的,还是只停留在表单所在的页面上就可以了?
不必有一个单独的页面来显示对最终用户的响应。实际上,这取决于您正在开发页面的场景。主要目的是为您网站的最终用户/访问者提供最佳 UI 体验。如果有一些重要的信息内容很大,那么最好在表单提交后在另一个页面中显示。如果它只是一条成功消息,那么在表单提交后留在同一页面并在那里显示响应消息是可以的。
现在进入问题 2 和 3
如果可以留下来,如何在不离开页面的情况下执行php代码发送数据?
此外,如果我停留在页面上,如何在页面上显示一条消息,例如“谢谢,您的表单已提交”?
您可以使用 ajax 来完成它。在 jquery 的帮助下,您可以使用
使其变得更简单
$.ajax 函数
例如:
$("#formbutton").click(function(){
$.ajax({
type: "POST", // method
url: "savecontact.php", // call to external php file
data: {name:n,contact:c}, // passing variables to php file
success: function(result) {
// get the response after ajax call is successful
},
complete: function(result){
}
});
});
现在在 savecontact.php 中编写必要的代码(通常是插入表格的 php 代码)来保存数据并返回响应。
例如:
result = mysqli_query("INSERT INTO table (NAME ) VALUES ('val')"));
if($result)
{
echo "Success";
exit;
}
else
{
echo "Error";
exit;
}
ajax 调用执行后,在 ajax 调用的成功函数中,您将获得 Success 或 Error 的响应,基于此,您可以将消息显示到通常放置在表单上方的空 div 中。
success: function (response) {
if(response == "Success"){
$("#div").html("Thanks, your form was submitted");
}
else{
$("#div").html("Issue with form submission.Please try again");
}
}
表单提交为 ajax 响应后,将显示相应的消息。