티스토리 뷰

Planning


1. 대한민국 주민등록번호 생성 원칙.


주민등록번호 : ABCDEF - GHIJKLM

            • AB - 출생 년도
            • CD - 출생 달
            • EF - 출생 일
            • G - 성별(1은 남자 2는 여자)
            • HIJKL - 본적 주소
            • M - 유효성 식별자
2. 유효성 검사 공식.
            • A ~ L 까지 각 자리에 2, 3, 4, 5, 6, 7, 8 ,9, 2, 3, 4, 5 를 곱한 후 모두 더한다.
            • 위의 값에 11로 나눈 나머지값을 구한다. 
            • 11에서 나머지 값을 뺀다.
            • 위의 값에 10으로 나눈 나머지값을 구한다. (두 자릿수일 경우 한 자릿수로 만들어 주기 위함.)
            • 11에서 나머지값을 뺀다.
            • 위의 값을 M과 비교한다. (동일할 경우 유효한 주민등록번호)

3. Prototype





Code

  • html

    
<html>
    <head></head>
    <body>
        <form method="post" action="check.php">  
            <table width="300" border="1">
                <td bgcolor="yellow">
                    <font>주민등록번호 :</font>
                    <input type="text" name="num" size="6" maxlength="6" />
                    <font> - </font>
                    <input type="text" name="ber" size="7" maxlength="7" />
                </td>
            </table>
    
            <p>
                <input type="submit" value="번호체크하기" />
                <input type="reset" value="다시입력"/>
            </p>
                                
        </form>
    </body>
</html>

 

  • php
<?php
if(!(strlen($_POST['num']) == 6) && (strlen($_POST['ber']) == 7)) {
    echo ("
    <script>
    alert('올바른 입력이 아닙니다.');
    history.go(-1);
    </script>
    ");   
} else {

    $total = 0;
    
    $id = $_POST['num'].$_POST['ber'];
    
    
    
    for($i=0, $j=2; $i < 13; $i++, $j++){
       
        $id[$i] = intval($id[$i]);
        
        
        if($j == 10) { $j=2; }
        
        if($i != 12){
            $total += $id[$i]*$j;    
        } else {
            $keynum = (11-($total % 11))%10;
        }
        
    }
    
    
    if($keynum == $id[12]) {
        echo("
        <script>
        alert('올바른 주민등록번호입니다.');
        close();
        </script>
        ");
    }
    else {
        echo ("
        <script>
        alert('올바른 주민등록번호가 아닙니다.');
        history.go(-1);
        </script>
        ");
    }

}
    
?>

 

Description

  • html

form 태그를 이용해서 입력받은 주민등록번호를 POST방식으로 php파일에 넘긴다.

  • php

POST방식으로 넘겨받은 주민등록번호를 유효성 검사 공식을 통해 유효한 주민등록번호인지를 판단한 후 결과를 알림 창으로 출력한다. 만약 번호의 길이가 맞지 않거나 유효하지 않은 소스라면 다시 입력 화면으로 돌아가게 만든다.

 

 

'Programming > PHP' 카테고리의 다른 글

PHP :: PHP소개  (0) 2012.11.03
댓글