确认密码?

时间:2009-10-26 02:25:18

标签: php

所有这一切都是新的,请原谅我的无知。我想弄清楚如何在我的表单中添加“确认您的密码”字段。使用PHP和mySQL。这是在html表单代码中输入的,如何将其设置为自动检查密码和确认密码字段是否匹配。

5 个答案:

答案 0 :(得分:18)

只需获取表单提交PHP并测试相等性的密码和确认密码字段:

if ($_POST["password"] === $_POST["confirm_password"]) {
   // success!
}
else {
   // failed :(
}

其中passwordconfirm_password是密码的HTML文本输入的ID。

答案 1 :(得分:4)

您要做的是表单验证。在客户端进行验证(使用javascript)是一个好主意,因此您可以在界面和服务器端为用户提供更快的响应(因为您的用户可以禁用javascript - 因为您应该从不盲目用户输入中的信任。有关此主题的更多信息,请阅读Should you do validation on your server side

您只需要比较两个发布的值。如果正确,请插入数据库。如果没有,请不要做任何事情并向用户返回一条消息,说密码不正确。

由于您未提供有关您的php环境(使用的框架,使用的库等)的足够或详细信息,因此无法提供更多详细信息。

答案 2 :(得分:2)

您可以使用

在JavaScript中查看
    <html><title></title><head>
<script>
        function validate(){

    if(!document.getElementById("password").value==document.getElementById("confirm_password").value)alert("Passwords do no match");
    return document.getElementById("password").value==document.getElementById("confirm_password").value;
   return false;
    }
    </script>
</head>
<body>
    <form onSubmit="return validate()" action="nextPage.php">
    Password: <input type="text" id="password" name="password" /><br/>
    Reenter Password: <input type="text" id="confirm_password" name="confirm_password" />
    <input type="submit" value="submit"/>
    </form>
</body>
</html>

在服务器端,如果客户端没有启用JavaScript,则需要再次检查

if($_GET['password']==$_GET['confirm_password'])

在POST方法的情况下,你必须使用$ _POST而不是$ _GET

答案 3 :(得分:2)

我更新了代码,表单提交时缺少冒号。

 <html>
   <title></title>
    <head>
    <script>
        function validate(){

            var a = document.getElementById("password").value;
            var b = document.getElementById("confirm_password").value;
            if (a!=b) {
               alert("Passwords do no match");
               return false;
            }
        }
     </script>
    </head>
    <body>
        <form onSubmit="return validate();" ">
        Password: <input type="text" id="password" name="password" /><br/>
        Re-enter Password: <input type="text" id="confirm_password" name="confirm_password" />
        <input type="submit" value="submit"/>
        </form>
    </body>
 </html>

答案 4 :(得分:1)

您使用的是某种框架吗?如果不是,它应该像保存后检查两个字段都设置那样简单,并且$ confirmationPassword == $ passWord。然后在将密码存储到SQL中之前,将所需的任何验证应用于密码。