确定,
所以我有一个页面'index.html'的表单。用户提交表单,然后进入处理页面,例如'processing.php'。我想从索引页面调用此处理页面,将返回值分配给变量,然后从那里开始。
我遇到的问题是只有当用户在index.html页面上提交表单时才会调用该页面。那么如何在页面实际提交并发送到该页面之前调用此处理页面? (我不知道我是否有意义,但我希望用户点击提交,然后该操作调用处理页面,将结果返回到索引页面以显示)
有关如何处理此问题的任何建议吗?
答案 0 :(得分:2)
如果您的index.html页面确实是index.html而不是重定向到PHP脚本,那么您将需要一些可以动态更新DOM的东西,即:Javascript。您可以使用JQuery AJAX函数将结果返回到index.html页面并更新页面上的元素。
或者您可以创建一个提交给自己的index.php,并且只有在$ _POST中存在表单变量时才返回表单结果。
答案 1 :(得分:1)
或者,您只需正常提交:
<form action="processing.php">
并在processing.php
中,在“处理”之后,它会重定向到index.html
答案 2 :(得分:1)
您可以采取多种方法。但是您通过使用html
文件来限制自己,因此您应该将文件重命名为index.php
将回复消息存储在会话中
# processing.php
session_start();
$_SESSION['message'] = 'Thanks for submitting the form';
//redirect to home page
header('Location: index.php');
# index.php - you will need to use php files to clear the session
session_start();
echo isset($_SESSION['message']) && !empty($_SESSION['message']) ?
$_SESSION['message'] : '';
//clear the session
unset($_SESSION['message']);
在网址
中设置GET参数# processing.php
//redirect to index
header('Location: index.php?processing=true');
# index.php
if(isset($_GET['processing'])) {
echo 'Form successfully submitted.'
}
将表单提交给自己
如果您将表单提交给自己(即index.php),您可以在此文件中进行处理并执行类似
的操作# index.php
if(isset($_POST['email'])) {
//process form
// ...
//echo message
echo 'Form submitted successfully.'
}
使用AJAX将表单提交到processing.php
我注意到上面的海报暗示了这一点。您应该查找jQuery ajax
方法,并在processing.php中回显消息。然后在'ajax'方法的成功函数中,显示消息
success: function(data) {
$('#results').html(data);
}
答案 3 :(得分:0)
您可以尝试以下jQuery:
$("form").submit(function () {
$.post("processing.php", $(this).serialize(), function(response) {
$(this).after(response);
});
return false;
});
这劫持了提交方法(return false
阻止默认),然后将数据发布到您的页面并在表单后插入响应。
答案 4 :(得分:0)
1)第一种方法
您可以将以下代码
header("location:index.html"); return;
在processing.php文件的代码末尾,有助于在任务完成后重定向索引页。
2)第二种方法
将index.html文件重命名为index.php。 现在在index.php文件中包含processing.php文件,然后你的代码如下:
include("processing.php");
<html>
<body>
<form method="post" action="">
User Name : <input type="text" name="userName" />
<input type="submit" name="submit" value="Update"/>
</form>
</body>
</html>
享受!!!