가입시 받은 주민번호 년도 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;
?>
이슬이가 폭우를 퍼부어서 오타가 있을수도 있습니다. 양해 바랍니다...
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년 으로 표시될겁니다..^^;;
(맞으려나..^^;;;;;;;;)
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년 으로 표시될겁니다..^^;;
(맞으려나..^^;;;;;;;;)
헙.. 위에분 순식간에 올리셨넵..ㅇㅅㅇ;;
위 소스가 더 정확해요..ㅠ_ㅠ;; 흑흑..저렇게 쓰세여..
위 소스가 더 정확해요..ㅠ_ㅠ;; 흑흑..저렇게 쓰세여..
생초보가 하나 둘 알아가는 부분에서 올린 글입니다. 쑥스럽습니다....^^
벌써 2000년 출생자들을 고려할 때가 되었군요.
헛헛헛.. 아직 만 7살이니 10년후에?!!?......=ㅁ=
TOGETHER님 / Juny44님 두분 다 감사드립니다.
TOGETHER님께는 매번 도움만 받네요^^
복 받으실거에요 *^0^*
TOGETHER님께는 매번 도움만 받네요^^
복 받으실거에요 *^0^*
아휴~ 뭘요~ 아는거 답변 잘 해드려야 나중에 모를 때 다른분이 도와줘요......! (퍽!)
저도 언른 배워서 답글 한번 달아보고 싶네요^^;;