在密码输入字段中防止SQL注入?PHP

New*_*mer 2 php passwords

在注册/登录表单中,我们验证用户输入,如用户名和电子邮件,并确保它不包含任何特殊字符.我的问题是关于密码输入字段.是否可以使用密码输入字段注入sql查询?因为我们允许用户为其添加特殊字符.

Fun*_*ner 5

我的问题是关于密码输入字段
是否可以使用密码输入字段注入SQL查询?

如果您使用准备好的声明,则不会

然而,无论是password_hash()password_verify()已经考虑到这一点,你不应该操纵密码或限制他们.

这是你应该在这个时代使用的东西.

例如John'sPlace,如果您转义包含引用的密码,那么将John\'sPlace依次修改该密码,如果您使用所述的散列方法,则在验证时将无声地失败.

即使潜在的黑客尝试类似的东西:String'); DROP TABLE USERS; --进入密码输入,当然也会在使用时将其作为哈希输入到数据库password_hash()中.

类似的东西$2y$10$.vGA1O9wmRjrwAVXD98HNOgsNpDczlqm3Jq7KnEd1rVAGv3Fykk1a(从手册中拉出的示例哈希)不会造成任何伤害.