我对确认表格输入感到困惑
例如,包含name
,email
,web address
,password
和textarea
据我所知,我需要使用文字输入:
trim()
tripslashes()
htmlspecialchars()
FILTER_SANITIZE_STRING
用于电子邮件和网址
preg_match()
FILTER_SANITIZE_EMAIL
FILTER_SANITIZE_URL
FILTER_VALIDATE_EMAIL
FILTER_VALIDATE_URL
密码
hash()
我想有一种更简单的方法。请提供建议,如果可能的话,请提供经过适当验证的表格。
答案 0 :(得分:2)
我建议在盲目地将它们用作“安全措施”之前了解每个做的内容,因为你可能弊大于利。
trim
用于删除左侧或右侧的空格。
stripslashes
取消引用带引号的字符串。
htmlspecialchars
将HTML中具有重要意义的特殊字符转换为HTML实体,并在输出 HTML时使用它。
过滤器标记(FILTER_VALIDATE_EMAIL,FILTER_VALIDATE_URL等),您可以将它们与filter_var
函数一起使用,如下所示:
if (filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
// Email is valid
}
对于密码,您可以使用指定散列算法的hash
函数(md5,sha512等)。您可能还需要查找密码盐以提供更高的安全性。