在实际的编程中,表单的HTML代码和获取表单的PHP程序可以分别写到两个文件中,也可以写到同一个PHP文件中。初学Web交互编程时,为了简便,可以使用后者,因为这样做可以减少网站内网页文件的数量。
1. 先看一个简单的例子
</pre><pre class="php" name="code"><!DOCTYPE html> <html><body> <form method="POST" action=""> <!-- action内容为空或为自身文件 --> 用户名:<input type="text" name="name" size="10"> 密码:<input type="text" name="ps" size="10"> <input type="submit" name="login" value="登录"> </form> <?php if (isset($_POST['login'])) { /* 如果点击了'登录'按钮 */ $user=$_POST["name"]; $pwd=$_POST["ps"]; echo "用户名是:".$user; echo "<br />密码是:".$pwd; } ?> </body></html>
这是将表单的HTML代码和获取表单的PHP程序写到同一个PHP文件中。
这是在输入了用户名为‘BIN_GOO’和密码为‘123’之后,点击登录的效果。
2. 改进方法
由于在输入了用户名和密码后,表单数据和服务器获取的信息在同一个页面显示。如果想要实现在点击登录后表单数据消失,只显示获取信息,该如何操作?
方法如下:
<?php if (isset($_POST['login'])) { $user=$_POST["name"]; $pwd=$_POST["ps"]; echo "用户名是:".$user; echo "<br />密码是:".$pwd; } else echo '<form method="post" action=""> 用户名:<input type="text" name="name" size="10"> 密码:<input type="text" name="ps" size="10"> <input type="submit" name="login" value="登录"> </form>'; ?>
这种实现,可以保证输出获取信息时不再显示表单。这是因为当刚开始没有点击登录时,会执行else中的代码,当点击了登录过后,会执行if中的代码,从而实现了表单数据的隐藏。
具体输出如下:
这是在输入了用户名为‘BIN_GOO’和密码为‘123’之后,点击登录的效果。