我试图通过以下代码使用JavaScript验证PHP中的确认密码:
if($_POST['PasswordField']== $_POST['ConfirmPassword'] && $_POST['PasswordField']>='8')
{
echo "Succed <br>";
}
else
{
echo "filed <br>";
}
匹配两个密码很有效,但密码长度不起作用。但是如果我输入一个小于8个字符的密码就会成功 - 为什么会这样?
另外,如何使用JavaScript检查密码强度但不使用正则表达式?
答案 0 :(得分:6)
您应该使用strlen()方法来获取$ _POST ['PasswordField']中包含的字符串的长度。你不应该用字符串'8'来检查它。所以它需要像:
<?php
function isPasswordValid($password1, $password2){
if(strlen($password1) >= 8)
if($password1 == $password2)
return true;
return false;
}
?>
使用POST中的两个值调用此方法。另外,使用trim()来删除空格。 哦......它与JavaScript无关。
答案 1 :(得分:3)
对于密码长度,您需要使用strlen
...&& strlen($_POST['PasswordField']) >= 8)...
答案 2 :(得分:1)
if($_POST['PasswordField']== $_POST['ConfirmPassword'] && strlen($_POST['PasswordField'])>8 && $_POST['PasswordField']>='8')
{
echo "Succeed <br>";
}
else
{
echo "failed<br>";
}
答案 3 :(得分:0)
您需要strlen();
函数来获取密码的长度。
http://php.net/manual/en/function.strlen.php
if (strlen($_POST['PassWordField']) > 8){
//do stuff
}