묻고답하기
회원가입 폼 전에 사용자 페이지(개인 HTML)를 추가하는 방법 아시는 분~
2009.03.03 20:15
"회원가입"버튼을 누를때 나타나는 가입 폼 전에 실명인증 서비스를 추가할려고 합니다.
회원가입 폼 이 나오기전에 페이지 2개를 거쳐서 폼이 나타나면 되는데요. 어떻게 하면 될까요?
[회원가입버튼클릭] -> [주민번호,이름 입력폼 클릭] -> [실명인증 페이지 실행] 이상이 없으면 -> [회원가입 폼]
이상이 있으면 -> [주민번호, 이름 입력 폼]
일단 회원가입버튼과 진행되는 페이지
"widgets/login_info/skins/xe_official/login_form.html"에 있는
46 : <li class="first-child"><a href="{getUrl('act','dispMemberSignUpForm')}">{$lang->cmd_signup}</a></li>
이더군요. 링크된 페이지는 dispMemberSignUpForm 에 있고, 이 함수는 아래와 같이 정의가 되어 있습니다.
"modules/member/member.view.php"에 아래와 같이 정의가 되어 있더군요.
/**
* @brief 회원 가입 폼 출력
**/
function dispMemberSignUpForm() {
$oMemberModel = &getModel('member');
// 로그인한 회원일 경우 해당 회원의 정보를 받음
if($oMemberModel->isLogged()) return $this->stop('msg_already_logged');
// 회원가입을 중지시켰을 때는 에러 표시
if($this->member_config->enable_join != 'Y') return $this->stop('+
'+
'msg_signup_disabled');
Context::set('extend_form_list', $oMemberModel->getCombineJoinForm($member_info));
// 템플릿 파일 지정
$this->setTemplateFile('signup_form');
}
위의 내용을 잠깐 보면 최종적으로 링크된 것은 맨 아래서 두번째 줄에 있는 'signup_form'이지요. 즉, 'signup_form.html'파일
에 링크가 걸린다는 내용 아닌가요?
이 정도로 분석을 해봤는데요. 대충 맞는 것 같지 않나요? ㅋㅋ
일단 페이지 한 개라도 추가해 볼 요량으로
"widgets/login_info/skins/xe_official/"폴더에 "member_join.html"파일을 추가한 후,
"modules/member/member.view.php" 파일에 아래와 같이 한 개의 함수를 추가 했습니다.
function dispCertiNameForm() {
if(Context::get('is_logged')) return $this->stop('already_logged');
$this->setTemplateFile('member_join');
}
"widgets/login_info/skins/xe_official/login_form.html"에 있는
그리고 회원가입버튼의 링크를 아래와 같이 수정했습니다.
<li class="first-child"><a href="{getUrl('act','dispCertiNameForm')}">{$lang->cmd_signup}</a></li>
실행해보니 계속 메인페이지로 넘어오는군요. ㅡㅡ;;
"member_join.html"로 링크가 안된다는 얘기가 아닌가요? ㅋㅋ
다시 처음으로 돌아가서
[회원가입버튼클릭] -> [주민번호,이름 입력폼 클릭] -> [실명인증 페이지 실행] 이상이 없으면 -> [회원가입 폼]
이상이 있으면 -> [주민번호, 이름 입력 폼]
회원가입 폼이 나타나기 전에 페이지 두 개를 추가하는 방법 좀 가르쳐 주세요~ *^^*