密码验证

时间:2011-10-10 16:12:17

标签: php javascript web

我试图通过以下代码使用JavaScript验证PHP中的确认密码:

if($_POST['PasswordField']== $_POST['ConfirmPassword'] && $_POST['PasswordField']>='8')
{
    echo "Succed <br>";
}
else
{
    echo "filed <br>";
}

匹配两个密码很有效,但密码长度不起作用。但是如果我输入一个小于8个字符的密码就会成功 - 为什么会这样?

另外,如何使用JavaScript检查密码强度但不使用正则表达式?

4 个答案:

答案 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
}