我让PHP注册,但现在我的问题是如果有人用户名已经使用了什么,那么他点击提交(如果用户名已经注册页面重新加载,如果点击提交)和页面重新加载,然后他需要再次写入所有值...
我试过用这个:
...
<form action="register.php" method="post">
<input type="text" name="username" value="<?php if(isset($_POST['username'])) { echo $_POST['username']; } ?>" />
</br>
...
我想制作安全系统。那我应该用什么?
答案 0 :(得分:0)
您已将表单的方法设置为POST,因此您无法使用$_GET
,而是必须使用$_POST
。
<form action="register.php" method="post">
<input type="text" name="username" value="<?php echo htmlspecialchars($_POST['username']); ?>" />
</br>
答案 1 :(得分:0)
在我看来,最好的方法是通过AJAX发送重复用户名的检查。用户完成输入后,使用JavaScript将请求发送一到两秒。
如果您不想使用AJAX,请将字段值存储在会话中,并在页面重新加载时将其吐出。这是您的页面:
<?php if(isset($_SESSION['username'])) { echo $_POST['username']; } ?>
然后,在表单提交代码中:
$_SESSION['username'] = $_POST['username'];
如果你的表单处理代码和你形成的标记在同一个PHP文件中,你的代码可以工作,但你肯定没有违反这样的关注点,是吗? ;)