我正在建立一个登录系统,我也希望让它更安全一些。 我不会发布我的整个登录过程文件,因为它还没有完成,但我确实需要一个简短的待办事项列表来使整个系统更安全。我知道使用PDO的预处理语句有助于防止SQL注入。我显然也用盐哈希密码。还有什么是关键的吗? 真的会帮助我!
我还在某处读过表格中不建议使用header()
。 (例如:在注册过程完成后重定向用户。)
这是真的吗?还有什么其他选择?
顺便说一下,表单数据显然会在另一个页面处理,我想知道是否可以从进程文件中发回错误(例如“用户名太短”)。我知道jQuery的.post()
和回调函数很容易实现,但我只是好奇:D
答案 0 :(得分:1)
当然,你可以发回错误。例如,如果你有
<form method="post" action="action.php">
<input type="text" name="username" />
</form>
然后在action.php中,当检查$_POST['username']
的长度时,如果它太短,请执行类似
print('<p class="warnings">The username is too short; it must be between X and Y characters.</p>');
require('yourform.php');
其中yourform.php
包含上述表单的HTML。
答案 1 :(得分:1)
以下是关于登录系统的建议:
您可以使用header()
重定向用户,但也可以使用die()
或exit()
,因为如果您不使用其中一个,则其余代码将继续执行。