HOME > 이용안내
이용안내
 
작성일 : 15-01-23 11:21
[스크립트언어] [PHP] php 함수, 외국인 등록번호 체크
 글쓴이 : 제이네트워크
조회 : 37,546  
정부기관에서 발표한 소스입니다.
 
<html>
 <head>
 <title>외국인등록번호 확인</title>
 <META HTTP-EQUIV='Content-type' ConTENT='text/html; CHARSET=euc-kr'>
 <script language=ⓙavascript>
 function check_no(form){
 var fgn_reg_no = document.fgn_check.fgn_reg_no1.value 
+ document.fgn_check.fgn_reg_no2.value;
 
        if (fgn_reg_no == ''){
                 alert('외국인등록번호를 입력하십시오.');
                 return false;
         }
 
        if (fgn_reg_no.length != 13) {
                 alert('외국인등록번호 자리수가 맞지 않습니다.');
                 return false;
         }
 if ((fgn_reg_no.charAt(6) == "5") || (fgn_reg_no.charAt(6) == "6"))
 {
 birthYear = "19";
 }
 else if ((fgn_reg_no.charAt(6) == "7") || (fgn_reg_no.charAt(6) == "8"))
 {
 birthYear = "20";
 }
 else if ((fgn_reg_no.charAt(6) == "9") || (fgn_reg_no.charAt(6) == "0"))
 {
 birthYear = "18";
 }
 else
 {
 alert("등록번호에 오류가 있습니다. 다시 확인하십시오.");
return false;
 } 

birthYear += fgn_reg_no.substr(0, 2);
 birthMonth = fgn_reg_no.substr(2, 2) - 1;
 birthDate = fgn_reg_no.substr(4, 2);
 birth = new Date(birthYear, birthMonth, birthDate);

 if ( birth.getYear() % 100 != fgn_reg_no.substr(0, 2) ||
 birth.getMonth() != birthMonth ||
 birth.getDate() != birthDate) {
 alert('생년월일에 오류가 있습니다. 다시 확인하십시오.');
return false;
 }
 form.submit();
         return true;
 }
 </script>
 </head>
 <boby>
 <form name='fgn_check' method=POST action='fgn_check.php'>
 외국인등록번호 <input type='text' name='fgn_reg_no1' size=6 maxlength=6> - <input type='text' name='fgn_reg_no2' size=7 maxlength=7>
 <input type='button' value='지금 검사' onClick='return form_check(form)'>
 </form>
 </body>
 </html>
 

--------------------------
 <?
if((strlen($fgn_reg_no1) == 6) && (strlen($fgn_reg_no2) == 7)) {
 $sum = 0;
 $odd = 0;
 $reg_no = $fgn_reg_no1."$fgn_reg_no2";

 for($i=0 ; $i < 13 ; $i++) {
         $reg_no[$i] = intval($reg_no[$i]);
 }

 $odd = $reg_no[7]*10 + $reg_no[8];
 
if ($odd % 2 != 0) {
 echo("<script language='ⓙavascript'>
 alert('외국인등록번호에 오류가 있습니다. 다시 확인하십시오.');
history.back();
 </script>");
 }

 if (($reg_no[11] != 6)&&($reg_no[11] != 7)&&($reg_no[11] != 8)&&($reg_no[11] != 9)) {
 echo("<script language='ⓙavascript'>
 alert('외국인등록번호에 오류가 있습니다. 다시 확인하십시오.');
history.back();
 </script>");
 }

 $sum = $reg_no[0]*2 + $reg_no[1]*3 + $reg_no[2]*4 + $reg_no[3]*5 + $reg_no[4]*6 + $reg_no[5]*7 
+ $reg_no[6]*8 + $reg_no[7]*9 + $reg_no[8]*2 + $reg_no[9]*3 + $reg_no[10]*4 + $reg_no[11]*5;
 $sum = $sum % 11;
 $sum1 = 11 - $sum;
 if($sum1 > 9) 
$sum1 = $sum1 % 10;

 $sum1 = $sum1 + 2; 

if($sum1 > 9) 
$sum1 = $sum1 % 10;

 $sum = $reg_no[12];

 if($sum == $sum1) {
 echo("<script language='ⓙavascript'>
 alert ('정상입니다.');
history.back();
 </script>");
 } else {
 echo("<script language='ⓙavascript'>
 alert('외국인등록번호에 오류가 있습니다. 다시 확인하십시오.');
history.back();
 </script>");
 }

 } else {
 echo("<script language='ⓙavascript'>
 alert('외국인등록번호에 오류가 있습니다. 다시 확인하십시오.');
history.back();
 </script>");
 }
 





Cloud server Streaming service Domain Cloud Firewall

 
 

Total 377

번호 제   목   글쓴이 날짜 조회
177 [리눅스서버] Linux 로그파일의 종류 제이네트워크 2015-01-16 33432
176 [리눅스서버] [Apache 웹서버]apache2에서 geoip 적용하기 제이네트워크 2016-08-26 33428
175 [리눅스서버] [NFS에러] NFS에서 에러 메세지 Stale NFS file handle 발생하는 경우 제이네트워크 2017-07-28 33415
174 [리눅스서버] Centos5.x yum install 에러시 CentOS-Base.repo 변경 제이네트워크 2017-05-01 33354
173 [윈도우서버] [windows server 2012 원격데스크톱 세션 늘리기] 제이네트워크 2015-04-27 33345
172 [윈도우미디어] 미디어 플레이어 10은 어떻게 삭제합니까? 관리자 2008-12-08 33228
171 [기타] 한글로 된 파일명을 가진 파일이 다운로드 되지 않을때 관리자 2011-06-02 33157
170 [리눅스서버] 우분투15.10 서버에서 SSH접속 안될 때 [에러-서버와 매치되는 outgoing encryption … 제이네트워크 2016-03-17 33154
169 [리눅스서버] 리눅스 컴파일에러 error : Autoconf version 2.68 or higher is required on CentOS 제이네트워크 2019-10-07 33108
168 [기타] 윈도우 메신저 삭제하기 관리자 2011-06-10 33088
167 [윈도우미디어] 미디어 플레이어를 업그레이드 한 뒤부터 동영상이 플레이 되지 않습니다. 관리자 2008-12-08 33061
166 [리눅스서버] CentOS 7.x vsftpd 자신의 홈디렉토리 상위폴더 접근막기 (2) 제이네트워크 2016-06-01 33056
165 [리눅스서버] Linux 파일시스템 디버깅을 이용한 파일복구법 제이네트워크 2015-01-16 32968
164 [기타] [무비메이커설치]무비메이커3.x 설치하기 제이네트워크 2015-03-07 32942
163 [기타] 윈도우7/윈도우10 winsxs 폴더 용량 줄이기 최적화 제이네트워크 2018-04-28 32898
162 [기타] [에러]휴지통이 손상되었습니다. 라는 메시지와 함께 디스크접근이 안될 때 제이네트워크 2017-05-01 32872
161 [기타] [워드프레스]영문으로 설치된 워드프레스 한글화 하기 제이네트워크 2014-06-06 32864
160 [리눅스서버] CentOS 7에서 부팅시 /etc/rc.local 파일 실행 시키는 방법 제이네트워크 2017-05-16 32773
159 [리눅스서버] CentOS7.x 버전에서 최신 node.js 설치하기 제이네트워크 2019-05-23 32754
158 [리눅스서버] Modsecurity-apache 2.5.X 설치중 에러 server: /usr/lib/libxml2.so: wrong ELF class: ELFCLASS32 제이네트워크 2015-02-17 32752
157 [DB] mysql 로그파일 경로 변경하기 관리자 2011-05-25 32715
156 [기타] 2015년 개정된 사이트에서 전자세금계산서(국세청)를 발행시 설치해야 할 Act… 제이네트워크 2015-03-04 32610
155 [윈도우서버] IIS7.x / IIS8.x 에서 asp 호스팅시 "Response 버퍼 제한 초과됨 " 오류 제이네트워크 2015-05-11 32503
154 [네트워크] [Bonding 활용]복수개의 랜카드를 묶어 대역폭을 확보 하기 제이네트워크 2015-01-23 32438
153 [DB] MySQL 설치 에러 : configure: error : No curses/termcap library found 관리자 2011-10-11 32413
152 [리눅스서버] Centos7.x 4TB 이상 하드디스크 추가 및 포맷하기 제이네트워크 2016-06-01 32406
151 [메뉴얼] 모바일 설교방송을 위한 MP4인코딩 제이네트워크 2011-05-23 32362
150 [스크립트언어] [php-openssl] php-4.4.x openssl 추가 모듈 설치 제이네트워크 2015-12-01 32347
149 [메일] [아웃룩셋팅]제이네트워크 웹메일서버 사용시 아웃룩 셋팅법 제이네트워크 2014-05-20 32218
148 [리눅스서버] pdo-mysql 추가 설치 방법 제이네트워크 2016-08-26 32209
147 [DB] [mysql] mysql에서 (테이블명) is marked as crashed and should be repaired 에러시 관리자 2012-03-23 32184
146 [리눅스서버] [LINUX]리눅스 명령어로 프로세서 한번에 죽이기 제이네트워크 2015-01-22 32122
145 [메뉴얼] 알ftp 사용법을 위한 메뉴얼 제이네트워크 2011-05-23 32115
144 [DB] [mysql]그누보드에서 접속카운트가 올라가지 않을 때 제이네트워크 2013-08-25 32091
143 [스크립트언어] 각언어별 redirect 구문 제이네트워크 2015-10-06 32088
142 [메뉴얼] SuperMicro IKVM Menual 제이네트워크 2014-03-31 32036
141 [DB] mysql 로그를 삭제하여 시작 안될때 관리자 2011-08-16 31991
140 [리눅스서버] Wildcard SSL 인증서 설치시에러 [warn] _default_ VirtualHost overlap on port 443, 제이네트워크 2019-03-30 31925
139 [스크립트언어] [php]php-5.3.x 버전 부터 Zend Guard Loader 설치 제이네트워크 2015-11-06 31901
138 [메뉴얼] MS 아웃룩메일 설정법 제이네트워크 2011-05-26 31877
 1  2  3  4  5  6  7  8  9  10