从上一页获取发布数据

时间:2014-08-01 06:22:34

标签: php database post undefined

我有两页第一页和page_two,在page_one中,用户输入一些信息,这些信息将被插入数据库中,当他按下回车键时,他应该被定向到page_two,在这个页面里面有他输入的相同信息在page_one中。问题是每当用户刷新page_two时,数据再次插入数据库。我尝试通过将标题用于新页面来解决此问题,但是在page_two中,在page_one中输入的信息将丢失。

page_one

<form action="page_one.php" method="post" name="info" >
<input name="userName" type="text"   />
<input name="userEmail" type="text"   />
<input name="userPass" type="text"   />
<input name="submit" type="submit"   />
</form>

<?php

 include('db.php');

if(isset($_POST['Login']))
{
$user_name = $_POST['userName']; 
$user_email = $_POST['userEmail'];  
$password = $_POST['userPass'];


mysql_query("INSERT INTO users VALUES ('$user_name',' $user_email',' $password')");


 header("Location:page_two.php.php");
 exit;

}
?>

page_two

 <?php
 $user_name = $_POST['userName']; 
 $user_email = $_POST['userEmail'];  
 $password = $_POST['userPass'];

 echo 'your user name: '.$user_name;
 echo 'your email:  '.$user_email;
 echo 'your password: '.$password; 




<input name="userName" type="hidden" value="<?php echo $user_name; ?>" />          
<input name="userEmail" type="hidden" value="<?php echo$user_email; ?>" />
<input name="userPass" type="hidden" value="<?php echo $password; ?>" />

当我尝试这段代码时,它给出了来自page_two的错误消息:

notice undefined index userName
notice undefined index userEmail
notice undefined index userPass

5 个答案:

答案 0 :(得分:0)

插入数据后,使用header重定向到某个安全页面。您可以使用插入行的id来获取第2页的数据。

希望这有帮助。

答案 1 :(得分:0)

您有正确的方法,但是在第2页上,您应该从数据库中检索它们,而不是从$ _POST数组中检索这些值,因为它们现在存在于数据库中。这将删除未定义的索引问题。

答案 2 :(得分:0)

通过url将变量传递给page_two。

所以你的标题将是

header("Location:page_two.php.php?userName=user_name&userEmail=user_email&userPass=password");

现在使用$ _GET在page_two

上捕获这些变量
<?php
 $user_name = $_GET ['userName']; 
 $user_email = $_GET ['userEmail'];  
 $password = $_GET ['userPass'];

 echo 'your user name: '.$user_name;
 echo 'your email:  '.$user_email;
 echo 'your password: '.$password; 

答案 3 :(得分:0)

因为您正在构建一个多页面的网络应用程序。我建议您必须使用SESSION保存第1页的发布信息,然后使用SESSION变量作为第2页。 我希望下面的链接有所帮助。

http://www.html-form-guide.com/php-form/php-order-form.html

答案 4 :(得分:-1)

在第二页上,您应该包含一个Select语句,它将选择存储在表中的所有值。

mysql_query("SELECT * FROM users ");