HOME > 이용안내
이용안내
 
작성일 : 15-01-23 11:21
[스크립트언어] [PHP] php 함수, 외국인 등록번호 체크
 글쓴이 : 제이네트워크
조회 : 36,920  
정부기관에서 발표한 소스입니다.
 
<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 44

번호 제   목   글쓴이 날짜 조회
44 [스크립트언어] php 에러 메세지 출력하기 (php.ini 설정) 제이네트워크 2016-07-27 48701
43 [스크립트언어] [php-openssl] php-4.4.x openssl 추가 모듈 설치 제이네트워크 2015-12-01 31700
42 [스크립트언어] php zip 설치 (ziparchive php extension) 제이네트워크 2015-11-25 41409
41 [스크립트언어] php-5.3.x 확장모듈 cURL 설치 방법 제이네트워크 2015-11-24 38824
40 [스크립트언어] php-4.x.x 의경우 phpize 사용하여 curl 모듈 추가] 제이네트워크 2015-11-24 33017
39 [스크립트언어] php 재컴파일 없이 모듈추가 하는 방법 입니다. 제이네트워크 2015-11-24 37951
38 [스크립트언어] [php]php-5.3.x 버전 부터 Zend Guard Loader 설치 제이네트워크 2015-11-06 31241
37 [스크립트언어] 각언어별 redirect 구문 제이네트워크 2015-10-06 31482
36 [스크립트언어] mysql 설치 후 phpMyAdmin #2002 MySQL 서버에 로그인할 수 없습니다. 해결법 (1) 제이네트워크 2015-09-03 44157
35 [스크립트언어] [jquery] 파일 업로드 전에 파일사이즈 체크하기 제이네트워크 2015-04-28 40286
34 [스크립트언어] [ASP]windows2008R2 서버에서 cdo.message 사용시 에러 [CDO.Message.1 error '80040222… (1) 제이네트워크 2015-01-28 44172
33 [스크립트언어] [PHP 에서 순위 구하기] 제이네트워크 2015-01-23 36264
32 [스크립트언어] [PHP] php에서 Excel 파일 읽기/쓰기 (2) 제이네트워크 2015-01-23 492172
31 [스크립트언어] [PHP] php 함수, 외국인 등록번호 체크 제이네트워크 2015-01-23 36921
30 [스크립트언어] [PHP] phpize 를 이용한 php iconv 모듈 추가 제이네트워크 2015-01-21 39602
29 [스크립트언어] [PHP]이온큐브 로더 ioncube loader 설치방법 입니다. (php.ini설정) 제이네트워크 2015-01-21 41762
28 [스크립트언어] PHP 5.3 이상 버전에서의 Zend Optimizer 설치 제이네트워크 2015-01-16 38904
27 [스크립트언어] PHP에서 엑셀파일을 생성할 수 있도록 도와주는 클래스입니다. 제이네트워크 2015-01-16 38266
26 [스크립트언어] [asp]HTTP 오류 500.24 - Internal Server Error 관리되는 통합 파이프라인 모드에 적용… 제이네트워크 2014-12-09 41443
25 [스크립트언어] [asp]Microsoft VBScript 런타임 오류 오류 '800a01ad' 제이네트워크 2014-11-22 39561
24 [스크립트언어] [PHP]PHP코드를 최적화하는 40가지 팁 제이네트워크 2013-12-04 43304
23 [스크립트언어] [php]php설치후 에러 SAFE MODE Restriction in effect. The script whose uid is 501 is not allowed… 제이네트워크 2013-08-19 51821
22 [스크립트언어] [php]php5.3.x 버전에서 phpinfo 가 안보일 때 제이네트워크 2013-08-19 45256
21 [스크립트언어] [XE] xe(제로보드 xe)에서 댓글 및 엮인 글을 모두 지워야 할때(쿼리) 제이네트워크 2013-08-06 41223
20 [스크립트언어] [XE] xe (제로보드xe) 로그인 패스워드를 잊어 버렸을 경우 제이네트워크 2013-08-06 46283
19 [스크립트언어] php컴파일에러(flex) configure: error: cannot find output from lex; giving up 제이네트워크 2012-11-13 42266
18 [스크립트언어] [제로보드4]관리자 테이블 생성 실패 에러시 제이네트워크 2012-07-09 39132
17 [스크립트언어] [php]링크 중에서 파일명만 뽑기 제이네트워크 2012-05-02 41691
16 [스크립트언어] [asp] 날짜계산시 ASP에서 윤달계산에 주의 하자 관리자 2012-03-01 40884
15 [스크립트언어] [asp] asp에서 천단위 , 찍는 코딩방법 관리자 2012-03-01 41540
14 [스크립트언어] [php]php.ini 설정에서 register_globals = on/off 차이점과 기능설명 (1) 관리자 2012-02-09 65051
13 [스크립트언어] php5.3. 이상 버전에서 ZendGuardLoader설치 관리자 2012-02-09 43825
12 [스크립트언어] [php]php5.3.x 에서 zend 설치시 주의 할 점 관리자 2012-02-09 42467
11 [스크립트언어] [php]설치시 에러 configure: error: xml2-config not found. please check your libxml2 installatio… 관리자 2011-10-11 48102
10 [스크립트언어] PHP5.3에서 split함수에러시 explode수정함 관리자 2011-08-02 39321
9 [스크립트언어] 그누보드 Function eregi() is deprecated 오류문제~ 관리자 2011-08-01 42307
8 [스크립트언어] [php] configure 중 에러 : error: mcrypt.h not found. Please reinstall libmcrypt. 관리자 2011-07-08 44660
7 [스크립트언어] ASP에서 char형 데이타가 datatime형으로 데이타가 들어가지 않을때. 관리자 2011-06-17 40094
6 [스크립트언어] 검색엔진 최적화를 위한 index.html 구성요령 (테크노트PHP) 제이네트워크 2011-06-17 38300
5 [스크립트언어] 영문 숫자조합 검색 자바스크립트 관리자 2011-06-17 38852
 1  2