客户端验证用户名和密码

Posted 柯南&

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了客户端验证用户名和密码相关的知识,希望对你有一定的参考价值。

1.概述

     在动态网站的用户注册页面中,经常需要对用户输入的用户名和密码的位数及成员组成进行判断,这样可以规范用户的注册信息。例如本实例,要求用户名由3-10位的字母、数字和下划线组成,密码由6-20位的字母、数字、下划线和点“.”组成并且首字符为字母,这时就需要对用户的输入进行判断,因此笔者编写了两个函数,分别用于验证用户输入的用户名和密码是否合法。

 

2.技术要点

验证用户名是否由3-10位的字母、数字和下划线组成的正则表达式如下:

/^(\w){3,10}$/

验证密码是否由6-20位的字母、数字、下划线和点“.”组成的正则表达式如下:

/^[A-Za-z]{1}([A-Za-z0-9]|[._]){5,19}$/

 

3.具体实现代码

(1)使用javascript编写一个用于验证用户名是否合法的函数checkeusername (),该函数只有一个参数username,用于获取输入的用户名,返回值为true或false。代码如下:

<script language="javascript">
function checkeusername(username){
      var str=username;
       //在JavaScript中,正则表达式只能使用"/"开头和结束,不能使用双引号
      var Expression=/^(\w){3,10}$/; 
      var objExp=new RegExp(Expression);          //创建正则表达式对象
      if(objExp.test(str)==true){                   //通过正则表达式验证
            return true;
      }else{
            return false;
      }
}
</script>

(2)使用JavaScript编写一个用于验证密码是否合法的函数checkePWD(),该函数只有一个参数PWD,用于获取输入的密码,返回值为true或false。代码如下:

<script language="javascript">
function checkePWD(PWD){
      var str=PWD;
       //在JavaScript中,正则表达式只能使用"/"开头和结束,不能使用双引号
      var Expression=/^[A-Za-z]{1}([A-Za-z0-9]|[._]){5,19}$/; 
      var objExp=new RegExp(Expression);          //创建正则表达式对象
      if(objExp.test(str)==true){                   //通过正则表达式验证
            return true;
      }else{
            return false;
      }
}
</script>

(3)调用checkeusername()函数和checkePWD()函数分别判断用户输入的用户名和密码是否合法,如果不合法,将给予提示信息。关键代码如下:

<script language="javascript">
function check(myform){
     if(myform.username.value==""){
      alert("请输入用户名!");myform.username.focus();return;
     }
     if(!checkeusername(myform.username.value)){
      alert("您输入的用户名不合法!");myform.username.focus();return;
     }
     if(myform.PWD.value==""){
      alert("请输入密码!");myform.PWD.focus();return;
     }
     if(!checkePWD(myform.PWD.value)){
      alert("您输入的密码不合法!");myform.PWD.focus();return;
     }
     if(myform.PWD1.value==""){
      alert("请确认密码!");myform.PWD1.focus();return;
     }
     if(myform.PWD1.value!=myform.PWD.value){
      alert("您两次输入的密码不一致,请重新输入!");myform.PWD.focus();return;
     }
     myform.submit();
}
</script>
 

 

以上是关于客户端验证用户名和密码的主要内容,如果未能解决你的问题,请参考以下文章

JSP 设计教师与学生不同登陆界面(带验证码)

WCF 安全性之 自定义用户名密码验证

SMTP 身份验证用户名是啥

ssh登陆强制使用密码验证登陆

Web服务的用户身份验证 - 存储在客户端密码

Java Active Directory LDAP - 使用密码哈希对用户进行身份验证