2010-08-23 146 views
0

我有一个php表单页面,用户填充数据和处理页面以将数据添加到数据库,其工作正常,但问题是我需要处理页面的结果以显示回我的主页?如何将结果返回到主页面?php在同一页上获得结果

回答

2

formaction属性中,将路径设置为$_SERVER['PHP_SELF']而不是处理文件。这样,表单将提交到可以处理它的同一页面。

<form action="<?php echo $_SERVER['PHP_SELF'];?>"> 
..... 
</form> 
+0

感谢Sarfraz,其实我有在1页两种形式,1种形式做处理一些功能在同一页面和其他表单上发送数据到另一个页面进行处理,然后在那里显示数据,我需要将结果返回到我的主页面? – PHPNewuser 2010-08-23 13:58:33

+0

我一直通过设置action =“”来完成这项工作。有什么理由更喜欢你的方法吗? – 2010-08-23 15:23:07

+0

@PHPNewuser:不,你可以使用任何一种方法:) – Sarfraz 2010-08-23 15:59:56

0

如何

<form action="mainPage.php" ...> 

简单,您的信息就会在主页上。

+0

没有好主意。好的做法是分割窗体文件和脚本处理程序。 – pltvs 2010-08-23 13:55:05

+0

以及它是在不同的文件:form.php和mainPage.php – Tokk 2010-08-23 13:58:44

+0

其实我有两个表单在1页,1表单确实处理一些功能在同一页面和其他形式发送数据到另一个页面进行处理,然后它显示数据在那里,我需要将结果返回到我的主页 – PHPNewuser 2010-08-23 14:00:52

0

使用会话。在脚本中向会话变量分配一条错误消息并重定向。在script.php的

$_SESSION['error'] = 'Incorrect email'; 

的index.php

echo $_SESSION['error']; 

在开始的脚本不要忘记session_start()

0

有很多种方法,取决于你在说什么。不过,你可能会想使用会话变量。在处理脚本:

<?php 
start_session(); 

// Do your processing here 

$_SESSION['myvar'] = $finished_data; 
?> 

,并在主网页调用它:

<?php 
session_start(); 

if(!empty($_SESSION['myvar'])) { 
    $data = $_SESSION['myvar']; 
} 

// Use $data here as you need 
?> 
+0

其实我在1页有两种形式,1种形式在同一页面上处理某些功能,其他形式发送数据到另一个页面进行处理,然后在那里显示数据,我需要得到结果返回到我的主页 – PHPNewuser 2010-08-23 14:00:12

+0

因此,使用$ _SESSION,因为我给了。你可以分开这些例子。在处理页面上,使用第一个代码块。在主页上,使用第二个查看数据是否已设置。 – Codeacula 2010-08-23 14:24:20

0

在我看来像你需要在这里包括一些JavaScript,然后张贴在返回的数据,无论你想要的。
有..后到相同的页面...
document.getElementById('yourDiv').innerHTML = 'yourReturnedData';
或$ _GET变量。
例如...
yoursite.com/yourPage.php?data1=data1&data2=data2
由...

$var1 = $_GET['data1']; 
$var2 = $_GET['data2']; 

希望这是利用获取返回的数据