// ##################################################################################
//   비밀번호의 휴효성을 체크한다.
//   호출 방법    :  getCehckPassWord(아이디오브젝트, 비밀번호 오브젝트, 비밀번호 확인오브젝트)
// ##################################################################################
function getCehckPassWord(ObjUserID, ObjUserPassWord, objUserPassWordRe)
{
 
 if(ObjUserPassWord.value != objUserPassWordRe.value)
 {
  alert("입력하신 비밀번호와 비밀번호확인이 일치하지 않습니다");
  ObjUserPassWord.value = "";
  objUserPassWordRe.value = "";
  ObjUserPassWord.focus();
  return false;
 }
 
 if(ObjUserPassWord.value.length < 8)
 {
  alert("비밀번호는 문자, 숫자, 특수문자의 조합으로 8~16자리로 입력해주세요.");
  ObjUserPassWord.value = "";
  objUserPassWordRe.value = "";
  ObjUserPassWord.focus();
  return false;
 }
 
 if(!ObjUserPassWord.value.match(/([a-zA-Z0-9].*[!,@,#,$,%,^,&,*,?,_,~])|([!,@,#,$,%,^,&,*,?,_,~].*[a-zA-Z0-9])/))
 {
  alert("비밀번호는 문자, 숫자, 특수문자의 조합으로 8~16자리로 입력해주세요.");
  ObjUserPassWord.value = "";
  objUserPassWordRe.value = "";
  ObjUserPassWord.focus();
  return false;
 }
 
 if(ObjUserID.value.indexOf(ObjUserPassWord) > -1)
 {
  alert("비밀번호에 아이디를 사용할 수 없습니다.");
  ObjUserPassWord.value = "";
  objUserPassWordRe.value = "";
  ObjUserPassWord.focus();
  return false;
 }
 
 var SamePass_0 = 0; //동일문자 카운트
 var SamePass_1 = 0; //연속성(+) 카운드
 var SamePass_2 = 0; //연속성(-) 카운드
 
 var chr_pass_0;
 var chr_pass_1;
 
 for(var i=0; i < ObjUserPassWord.value.length; i++)
 {
  chr_pass_0 = ObjUserPassWord.value.charAt(i);
  chr_pass_1 = ObjUserPassWord.value.charAt(i+1);
  
  //동일문자 카운트
  if(chr_pass_0 == chr_pass_1)
  {
   SamePass_0 = SamePass_0 + 1
  }
  
  
  //연속성(+) 카운드
  if(chr_pass_0.charCodeAt(0) - chr_pass_1.charCodeAt(0) == 1)
  {
   SamePass_1 = SamePass_1 + 1
  }
  
  //연속성(-) 카운드
  if(chr_pass_0.charCodeAt(0) - chr_pass_1.charCodeAt(0) == -1)
  {
   SamePass_2 = SamePass_2 + 1
  }
 }
 if(SamePass_0 > 1)
 {
  alert("동일문자를 3번 이상 사용할 수 없습니다.");
  ObjUserPassWord.value = "";
  objUserPassWordRe.value = "";
  ObjUserPassWord.focus();
  return false;
 }
 
 if(SamePass_1 > 1 || SamePass_2 > 1 )
 {
  alert("연속된 문자열(123 또는 321, abc, cba 등)을\n 3자 이상 사용 할 수 없습니다.");
  ObjUserPassWord.value = "";
  objUserPassWordRe.value = "";
  ObjUserPassWord.focus();
  return false;
 }
 return true;
}

'개발팁( Javascript )' 카테고리의 다른 글

jsonp에 대한 간단한 사용법  (0) 2014.03.21
SNS연결 스크립트  (0) 2013.07.15
메일 주소 체크 정규 표현식  (0) 2013.07.09
ID의 유효성을 체크한다.  (0) 2013.07.02
오픈윈도우를 띄울때  (0) 2013.07.02
top


// ##################################################################################
//   메일주소를 체크한다.
//   호출 방법    :  isValidEmail(문자열)
// ##################################################################################
function isValidEmail(email_address) 

    // 이메일 주소를 판별하기 위한 정규식 
    var format = /^[_0-9a-zA-Z-]+(\.[_0-9a-zA-Z-]+)*@[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*$/; 
     
    // 인자 email_address를 정규식 format 으로 검색 
    if (email_address.search(format) != -1) 
    { 
        // 정규식과 일치하는 문자가 있으면 true 
        return true; 
    } 
    else 
    { 
        // 없으면 false 
        return false; 
    } 

'개발팁( Javascript )' 카테고리의 다른 글

jsonp에 대한 간단한 사용법  (0) 2014.03.21
SNS연결 스크립트  (0) 2013.07.15
비밀번호의 휴효성을 체크 스크립트  (0) 2013.07.09
ID의 유효성을 체크한다.  (0) 2013.07.02
오픈윈도우를 띄울때  (0) 2013.07.02
top


##################################################################################
//   ID의 유효성을 체크한다.
//   호출 방법    :  getCheckID(아이디오브젝트)
// ##################################################################################
function getCheckID(ObjUserID)
{

 if(!/^[a-zA-Z0-9]{6,20}$/.test(ObjUserID.value))
 {
  alert('ID는 숫자와 영문자 조합으로 6~12자리를 사용해야 합니다.');
  ObjUserID.value = "";
  ObjUserID.focus();
  return false;
 }
 
 var chk_num = ObjUserID.value.search(/[0-9]/g);
 var chk_eng = ObjUserID.value.search(/[a-z]/ig);
 
 if(chk_num < 0 || chk_eng < 0)
 {
  alert('ID는 숫자와 영문자를 혼용하여야 합니다.');
  ObjUserID.value = "";
  ObjUserID.focus();
  return false;
 }
 
 if(/(\w)\1\1\1/.test(ObjUserID.value))
 {
  alert('ID에 같은 문자를 4번 이상 사용하실 수 없습니다.');
  ObjUserID.value = "";
  ObjUserID.focus();
  return false;
 }
 return true;
}

top