웹마스터 팁
주민등록번호로 성별/나이/연령대 구분
2008.01.09 21:44
위의 그림과 같이 주민번호로 나이 / 성별 / 연령대를 구분하는 스크립트입니다.
예를 들자면 ) 20세의 성인 / 남성 or 10세의 아동 / 남성 이런 식이지요,
참고로 주민번호 자체를 VALIDATION 하는 부분과 숫자-문자 구분 같은 것은 뺐습니다.
※ 유아는 24개월까지, 아동은 25개월~ 12세까지, 13세 이상은 성인으로 구분합니다. (전세계 항공사, 호텔 분류기준)
__ 여기에서 Teenager를 구분하려면 또 또 연령대를 구분해서 쪼개주면 되겠지요.
-------------------------------아래-----------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> 주민등록번호로 구분하기 </TITLE>
</HEAD>
<BODY>
<!--입력한 주민번호로 나이와 성별을 알아보는 스크립트 시작-->
<SCRIPT language="JavaScript">
<!--주민번호 스크립트 끝-->
Now = new Date(); //현재 연도를 구함
NowYear = Now.getFullYear(); //나이를 구하는 함수 시작
function getAge()
{
var jfm = document.jumin_form // 폼 이름이 길어서 변수로 replace함
var j1=jfm.jumin1.value; //앞 6자리에 입력한 값을 j1 에 대입
var j2=jfm.jumin2.value; //뒤 7자리에 입력한 값을 j2 에 대입
var n1=j1.substr(0,2); //앞 6자리에 입력한 값중 앞에서 두글자를 n1 에 대입
var n2=j2.substr(0,1); //뒤 7자리에 입력한 값중 맨앞의 글자를 n2 에 대입( 1~4)
if((n2==1)||(n2==2)){ //뒤 첫째값이 1, 2일 경우(1900년대에 출생한 남녀)
jfm.age.value=(NowYear-(1900 + Number(n1)));
}
if ((n2==3)||(n2==4)){ //뒤 첫째값이 3, 4일 경우
jfm.age.value=(NowYear-(2000 + Number(n1)));
}
if ((n2==1)||(n2==3)){ //뒤 7자리에 입력한 값중 맨앞의 수가 1이나 2일 경우(남자)
jfm.sex.value="남성";
}
if ((n2==2)||(n2==4)){ //뒤 7자리에 입력한 값중 맨앞의 수가 3이나 4일 경우(여자)
jfm.sex.value="여성";
}
if (document.jumin_form.age.value <= 2 ){ // 유아 24개월까지
jfm.age_class.value="유아";
}
if (jfm.age.value > 2 || jfm.age.value <= 12 ){ // 아동
jfm.age_class.value="아동";
}
if (jfm.age.value > 12 ){ // 성인-12세 이상
jfm.age_class.value="성인";
}
}
//-->
</script>
<!--입력한 주민번호로 나이와 성별을 알아보는 스크립트 끝-->
<!--아래와 같이 폼 태그를 구성하세요-->
<form method="get" name="jumin_form">
주민등록번호 입력:
<input type="text" maxlength="6" name="jumin1" size="7">-
<input type="text" maxlength="7" name="jumin2" size="8">
<input name="send" type="button" value="나이 알아보기" onClick="getAge()"><br>
<HR>
당신은 <input type="text" name="age" value="" size="3">살의
<input type="text" name="sex" value="" size="3">
<input type="text" name="age_class" value="" size="3"> 입니다.
</form>
<!--폼구성 설정 끝-->
</BODY>
</HTML>
-------------------------------여기까지-----------------------------
댓글 4
-
앵동
2008.01.26 20:07
주민등록번호로 구분하기 -
인챈트
2008.02.17 18:32
인풋이 주민등록번호 자릿수대로 안차도 년도, 성별 구분까지만 입력되면 구분되네요 -
하얀들새
2009.03.22 12:04
감사합니다.. -
davidis
2014.02.17 17:54
음 좋습니다. 하지만. javascript 에서 보다 서버쪽에서 처리 하는게 낳을듯 한데욤