2011-05-27 86 views
0

我用简单的下面的代码创建一个表单,并在另一页接收到它的价值:

firstpage.php

<form action="checklogin.php" method="post" > 
<table border=1> 
<tr><td>Username </td><td><input type="text" name="txtuser" /></td></tr> 
<tr><td>Password </td><td><input type="text" name="txtpwd" /></br> 
</td></tr> 
<tr><td><input type="submit" value="Login now" name="btnsub"/> 
</table> 
</form> 

checklogin.php

<html> 
<body> 
Welcome <?php echo $_POST['txtuser']; ?> 
</body> 
</html> 

此代码不会在所有浏览器的nxtpage.php中显示输入txtuser的值。

+3

您正在发布到'checklogin.php',但正试图''回显'nextpage.php'上的内容。我会说这是一个问题。 – deceze 2011-05-27 08:30:34

+1

请接受更多以前的答案。在这种情况下,您不会将数据发布到nextpage.php,而是使用checklogin.php,因此$ _POST变量为空。 – Dormouse 2011-05-27 08:30:44

+1

如果要将用户输入输出到HTML页面,请务必使用'htmlspecialchars'。 – 2011-05-27 08:31:45

回答

0

您的表单目标是checklogin.php还是nxtpage.php?因为如果它是checklogin.php,很自然nxtpage.php将不会收到发送到checklogin.php的POST变量。

除非您只是在做一些非常简单的事情,否则您想要使用会话 - 例如,请参阅this tutorial关于会话。

3

您正在发送到checklogin.php。当然nextpage.php将不具有POST值。尝试将它粘在会话中。