회원가입시 나이 제한 루틴 접목 정보
회원가입시 나이 제한 루틴 접목본문
다른 곳에서 사용하는 루틴을 그누보드에 적용시켜 보고자 가져와서
골똘히 보는 중입니다.
현재 팁이나 질문 답변란에는 명확한 내용은 아직 없고, 게시판별 인증을
생년으로만 하는 형태까지만 있습니다. 이는 수동으로 매년 변경해 주어야 하는
손이 가는 부분도 있고, 생년으로만 하는 것은 생일을 나이 기준을 하는 상황과는 맞지
않기 때문에 적어도 월 단위까지는 맞추어 주어야 하겠습니다.
그누보드는 처음 사용하기 시작한지라 많이 낯설어서 많이 헤매고 있습니다.
한참을 고민하다가 이렇게 회원님들께 여쭙습니다.
회원 가입시에 14세 이하 회원가입시 나이를 월단위까지는 계산하여 가입을
제한 하는 방법에 대해서 문의 드립니다.
아래는 다른 곳에서 가져온 14세 이하 회원가입 제한 루틴입니다.
참고하시면 좋으실 것 같습니다. 여기서 핵심은 substr($jumin1,0,2); 과
substr($jumin1,2,2); 인 것으로 보이는 데 이것을 그누보드
생년월일과 맞추려면 어떻게 해야할지 궁금합니다. 감사합니다.
//-------------14세 이하 가입금지 루틴-----
function go($url, $time=0){
echo "<meta http-equiv='refresh' content='$time;url=$url'>";
}
$ju_year = substr($jumin1,0,2);
$ju_month = substr($jumin1,2,2);
function go($url, $time=0){
echo "<meta http-equiv='refresh' content='$time;url=$url'>";
}
$ju_year = substr($jumin1,0,2);
$ju_month = substr($jumin1,2,2);
$current_year = date('Y');
$current_month = date('m');
if ($ju_year == '00' || $ju_year == '01' || $ju_year == '02' || $ju_year == '03')
{$ju_year = "20".$ju_year;}
else
{$ju_year = "19".$ju_year;}
$current_month = date('m');
if ($ju_year == '00' || $ju_year == '01' || $ju_year == '02' || $ju_year == '03')
{$ju_year = "20".$ju_year;}
else
{$ju_year = "19".$ju_year;}
$check_year = $current_year - $ju_year;
if ( $check_year < 14 )
{ js_Error('14세 미만은 법정대리인(부모 등 보호자)의 동의서 없이는 가입할 수 없습니다.');
//go('http://');
echo "<script language=javascript>location.href='/'</script>";
}
elseif ( $check_year == '14' && ( $current_month < $ju_month) )
//go('http://');
echo "<script language=javascript>location.href='/'</script>";
}
elseif ( $check_year == '14' && ( $current_month < $ju_month) )
{
js_Error('14세 미만이(생일안지남)은 법정대리인(부모 등 보호자)의 동의서 없이는 가입할 수 없습니다.');
//go('http://');
echo "<script language=javascript>location.href='/'</script>";
}
js_Error('14세 미만이(생일안지남)은 법정대리인(부모 등 보호자)의 동의서 없이는 가입할 수 없습니다.');
//go('http://');
echo "<script language=javascript>location.href='/'</script>";
}
//-----------------------------------------
댓글 전체

기본적으로 최신 배포된 버전의 skin/member/basic/register_form.skin.php의 하단 부분에
if (typeof(f.mb_birth) != 'undefined') {
var todays = <?=date("Ymd", $g4['server_time']);?>;
// 오늘날짜에서 생일을 빼고 거기서 140000 을 뺀다.
// 결과가 0 이상의 양수이면 만 14세가 지난것임
var n = todays - parseInt(f.mb_birth.value) - 140000;
if (n < 0) {
alert("만 14세가 지나지 않은 어린이는 정보통신망 이용촉진 및 정보보호 등에 관한 법률\n\n제 31조 1항의 규정에 의하여 법정대리인의 동의를 얻어야 하므로\n\n법정대리인의 이름과 연락처를 '자기소개'란에 별도로 입력하시기 바랍니다.");
return;
}
}
이 있습니다...적당히 응용해 보심도 좋을 듯 합니다.
if (typeof(f.mb_birth) != 'undefined') {
var todays = <?=date("Ymd", $g4['server_time']);?>;
// 오늘날짜에서 생일을 빼고 거기서 140000 을 뺀다.
// 결과가 0 이상의 양수이면 만 14세가 지난것임
var n = todays - parseInt(f.mb_birth.value) - 140000;
if (n < 0) {
alert("만 14세가 지나지 않은 어린이는 정보통신망 이용촉진 및 정보보호 등에 관한 법률\n\n제 31조 1항의 규정에 의하여 법정대리인의 동의를 얻어야 하므로\n\n법정대리인의 이름과 연락처를 '자기소개'란에 별도로 입력하시기 바랍니다.");
return;
}
}
이 있습니다...적당히 응용해 보심도 좋을 듯 합니다.
말씀 감사합니다.
최근 버전에는 인식하는 기능까지는 들어가 있네요..
업그레이드 기능 설명에 추가 내용이 없어서 몰랐습니다.
그런데.. 이 기능은 나이를 인식만 할 뿐 제한을 하는 것이 아니라서
부모에게 일일이 전화를 걸어서 녹음을 해야 하는 번거로운 노력과 시간이
수반되므로 마땅하지 않네요..
미만의 나이로 입력하면 안내 메세지가 나올 때
확인 버튼을 누르면 메인 화면으로 되돌려 버리는 방법이 가장 간단할 듯 하네요..
return;
대신에
echo "<script language=javascript>location.href='/'</script>";
를 넣는 것은 PHP 문법적으로 맞지 않는 것 같은데
보완해야 될 부분이 있을까요 ?
최근 버전에는 인식하는 기능까지는 들어가 있네요..
업그레이드 기능 설명에 추가 내용이 없어서 몰랐습니다.
그런데.. 이 기능은 나이를 인식만 할 뿐 제한을 하는 것이 아니라서
부모에게 일일이 전화를 걸어서 녹음을 해야 하는 번거로운 노력과 시간이
수반되므로 마땅하지 않네요..
미만의 나이로 입력하면 안내 메세지가 나올 때
확인 버튼을 누르면 메인 화면으로 되돌려 버리는 방법이 가장 간단할 듯 하네요..
return;
대신에
echo "<script language=javascript>location.href='/'</script>";
를 넣는 것은 PHP 문법적으로 맞지 않는 것 같은데
보완해야 될 부분이 있을까요 ?

if (typeof(f.mb_birth) != 'undefined') {
var todays = <?=date("Ymd", $g4['server_time']);?>;
// 오늘날짜에서 생일을 빼고 거기서 140000 을 뺀다.
// 결과가 0 이상의 양수이면 만 14세가 지난것임
var n = todays - parseInt(f.mb_birth.value) - 140000;
if (n < 0) {
alert("만 14세가 지나지 않은 어린이는 정보통신망 이용촉진 및 정보보호 등에 관한 법률\n\n제 31조 1항의 규정에 의하여 법정대리인의 동의를 얻어야 하므로\n\n법정대리인의 이름과 연락처를 '자기소개'란에 별도로 입력하시기 바랍니다.");
location.href = g4_path;
return false;
}
}
var todays = <?=date("Ymd", $g4['server_time']);?>;
// 오늘날짜에서 생일을 빼고 거기서 140000 을 뺀다.
// 결과가 0 이상의 양수이면 만 14세가 지난것임
var n = todays - parseInt(f.mb_birth.value) - 140000;
if (n < 0) {
alert("만 14세가 지나지 않은 어린이는 정보통신망 이용촉진 및 정보보호 등에 관한 법률\n\n제 31조 1항의 규정에 의하여 법정대리인의 동의를 얻어야 하므로\n\n법정대리인의 이름과 연락처를 '자기소개'란에 별도로 입력하시기 바랍니다.");
location.href = g4_path;
return false;
}
}
감사합니다. 한참을 고민하던 중이었는데 도움을 주셔서 감사합니다.
skin/member/basic/register_form.skin.php의 144번째 줄에
생년월일 나타나게 하는 부분에 <? if ($w=="u") { ?>
로 되어 있으니까 회원가입시 페이지에는 생년월일이 보이지 않아
이전 버전을 살펴보니 <? if ($w=="") { ?> 로만 되어 있길래
그렇게 바꾸었더니 제대로 작동이 됩니다.
<? if ($w=="u") { ?> 와 <? if ($w=="") { ?> 의 차이는 무엇인지 궁금해서
게시판을 검색해 보아도 어떤 차이인지 명확하게 모르겠습니다.
<? if ($w=="") { ?> 이렇게 두어도 별 문제는 없을까요...?
skin/member/basic/register_form.skin.php의 144번째 줄에
생년월일 나타나게 하는 부분에 <? if ($w=="u") { ?>
로 되어 있으니까 회원가입시 페이지에는 생년월일이 보이지 않아
이전 버전을 살펴보니 <? if ($w=="") { ?> 로만 되어 있길래
그렇게 바꾸었더니 제대로 작동이 됩니다.
<? if ($w=="u") { ?> 와 <? if ($w=="") { ?> 의 차이는 무엇인지 궁금해서
게시판을 검색해 보아도 어떤 차이인지 명확하게 모르겠습니다.
<? if ($w=="") { ?> 이렇게 두어도 별 문제는 없을까요...?

<? if ($w=="u") { ?> : 회원정보 수정시
<? if ($w=="") { ?> : 회원가입시
<? if ($w=="") { ?> : 회원가입시
감사합니다.
바쁘신 와중에도 답변을 주시니 너무나 감사합니다.
바쁘신 와중에도 답변을 주시니 너무나 감사합니다.
회원가입시 나이 제한