假设我有一个简单的表格:
<form action="register.php" method="post">
<label>Password:</label>
<?php if (isset($errors[1])) echo $errors[1]; ?> <- Displays error message if there is one
<input type="password" name="user_pass" />
<label>Confirm Password:</label>
<input type="password" name="user_pass_confirm" />
<input type="submit" />
</form>
$user_pass = $security->encrypt($_POST['user_pass']);
$user_pass_confirm = $security->encrypt($_POST['user_pass_confirm']);
$registration->form($user_pass, $user_pass_confirm);
还有一个类:
if (empty($user_pass)) {
$errors[1] = 'Passwords required';
} else if ($user_pass != $user_pass_confirm) {
$errors[1] = 'Passwords don't match';
}
//if error array empty, create member
我要做的是验证密码以使其成为必需,确保它们匹配,我还将添加一个 preg_match 正则表达式以确保它至少有 8 个字符长或其他任何东西。
我的问题是,我在提交之前已经加密了密码(我认为不应该发布未加密的密码,如果我错了,请纠正我)。
然后当我的班级获得编码字符串时,我无法做任何事情来验证它。我可以通过将字段与什么都没有的加密/加盐版本进行比较来检查是否为空,但我确信这不是这样做的方法。
任何人都可以指出验证密码的标准程序或您对解决方案的任何建议。
非常感谢