티스토리 뷰
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 |
---|
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 안드로이드 스튜디오 라이브 템플릿
- Android
- 안드로이드 스튜디오
- 문제풀이
- LiveTemplate
- live template
- 영어발음
- compose bottomsheet
- 코틀린 기초
- 컴포즈 바텀시트
- 코틀린
- 코딩문제
- 코틀린 기초강의
- android studio
- 런탭
- 개발자
- Java
- 프로젝트오일러
- php
- Programming
- kotlin 기초
- 안드로이드 컴포즈
- 코딩
- 안드로이드
- Kotlin
- 영어회화
- 안스 템플릿
- 자바
- 안드로이드 바텀시트
- 프로그래밍
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함