在实际的编程中,表单的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’之后,点击登录的效果。