当输入密码错误时,许多具有登录功能的网站如何在用户名字段中保留用户名。 表单的动作(它在index.php上)是另一个php文件,如果密码不正确,则使用Header()返回索引并使用GET将错误传递给它。我可以使用GET将用户名传回表单,但这看起来很乱,而且我注意到像SMF论坛这样的网站的用户名仍然保留在用户名字段中而没有凌乱的网址。
答案 0 :(得分:3)
我通常发现在表单显示的同一个脚本中处理表单数据更容易,只有在我收集了正确的输入时才会重定向到其他地方。
答案 1 :(得分:2)
Simples!
<form action="loginpage.php" method="post">
<fieldset>
...
<input type="text" name="username" value="<?php if (isset($_POST['username'])) echo $_POST['username']; ?>" />
...
</fieldset>
</form>
省略了其余形式以强调解决方案。
答案 2 :(得分:1)
您可以使用会话。
例如,当帖子不正确时(这将在处理您的帖子请求的文件中):
$_SESSION['username'] = $_POST['username'];
然后在您的登录页面上:
<input type="text" name="username" value="<?php echo @$_SESSION['username']; ?>" />
请确保您开始会话:http://php.net/session_start
答案 3 :(得分:0)
通过GET方法
header("Location: loginpage.php?username=".$_REQUEST['username']);
在表单页面中,您可以像访问它一样访问它:
<input type="text" name="username" value=<?php echo $_GET['username']?>