가입시 받은 주민번호 년도 4자리 출력하려면 어떻게 해야하나요? > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

가입시 받은 주민번호 년도 4자리 출력하려면 어떻게 해야하나요? 정보

가입시 받은 주민번호 년도 4자리 출력하려면 어떻게 해야하나요?

본문

회원가입시 주민번호를 받었습니다.
그 받은 주민번호 년도 4자리를 출력하려면 어떻게 하는지요?
 
13자리는 <?=$member["mb_jumin"]?> 이렇게 하니 출력이 되던데요.
년도로 4자리 출력 할수있는 방법이있나요?
 
고수님들 도움 좀 주세요^^;

댓글 전체

1. 일반적으로 주민번호(이하 주번)는 bbs/register_form.php의 22줄에  $jumin = sql_password($mb_jumin); 에 의거하여 암호화되어 저장된는 것으로 압니다.
2. 질문의 내용에 의거하여
>>13자리는 <?=$member['mb_jumin']?> 이렇게 하니 출력이 되던데요.
가 맞다면 별도로 받지 않았거나 암호화 하지 않은 경우라 생각합니다.

만일 2항에 의거 <?=$member['mb_jumin']?> 출력형태가 1234561234567의 형태라면
bbs/bbs/register_form.php의 소스를 응용하시면 출력 가능합니다.

<? if($member[mb_jumin]) {
      // 주민등록번호의 7번째 한자리 숫자
        $y = substr($member[mb_jumin], 6, 1);
        // 생일은 8자리로 만든다 (나중에 검색을 편하게 하기 위함)
        // 주민등록번호 앞자리를 그냥 생일로 사용함 ㅠㅠ
        // 주민등록번호 7번째 자리를 따져서...
        $birth = substr($member[mb_jumin],  0, 2);
        if ($y == 9 || $y == 0) // 1800년대생 (계시려나?)
            $year = "18" . $birth;
        else if ($y == 1 || $y == 2) // 1900년대생
            $birth = "19" . $birth;
        else if ($y == 3 || $y == 4) // 2000년대생
            $birth = "20" . $birth;
        else // 오류
            $birth = "xx" . $birth;
}

echo $birth;
?>

이슬이가 폭우를 퍼부어서 오타가 있을수도 있습니다. 양해 바랍니다...
주민번호 출력을 안해봐서 잘 모르겠는데..
13자리가 그렇게 출력된다면..
<?
$jumin_year = substr($member["mb_jumin"], 0, 2);
$year = ($jumin_year < 50) ? "20".$jumin_year : "19".$jumin_year;
echo $year;
?>
앞자리 두개 받아서 50년 미만이면 20xx 년, 50년 이상이면 19xx년 으로 표시될겁니다..^^;;
(맞으려나..^^;;;;;;;;)
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT