회원가입 질문이요

회원가입 질문이요

QA

회원가입 질문이요

본문

register.php


<?php
include_once('./_common.php');
// 로그인중인 경우 회원가입 할 수 없습니다.
if ($is_member) {
    goto_url(G5_URL);
}
// 세션을 지웁니다.
set_session("ss_mb_reg", "");
$g5['title'] = '회원가입약관';
include_once('./_head.php');
$register_action_url = G5_BBS_URL.'/register_form.php';
include_once($member_skin_path.'/register.skin.php');
include_once('./_tail.php');
?>

 

bbs / register_form.php


<?php
include_once('./_common.php');
include_once(G5_CAPTCHA_PATH.'/captcha.lib.php');
include_once(G5_LIB_PATH.'/register.lib.php');
// 불법접근을 막도록 토큰생성
$token = md5(uniqid(rand(), true));
set_session("ss_token", $token);
set_session("ss_cert_no",   "");
set_session("ss_cert_hash", "");
set_session("ss_cert_type", "");

if($_POST['mb_member'] == '1') { // $_POST 로 받아온 값이 1(개인회원)일 경우
    include_once($skin_path.'/register_form.skin.free.php'); // 개인회원 회원가입 페이지를 불러옴
elseif ($_POST['mb_member'] == '2') { // $_POST 로 받아온 값이 2(기업회원)일 경우
    include_once($skin_path.'/register_form.skin.php'); //  기업회원 회원가입 페이지를 불러옴
}
if( $provider && function_exists('social_nonce_is_valid') ){   //모바일로 소셜 연결을 했다면
    if( social_nonce_is_valid(get_session("social_link_token"), $provider) ){  //토큰값이 유효한지 체크
        $w = 'u';   //회원 수정으로 처리
        $_POST['mb_id'] = $member['mb_id'];
    }
}
if ($w == "") {
    // 회원 로그인을 한 경우 회원가입 할 수 없다
    // 경고창이 뜨는것을 막기위해 아래의 코드로 대체
    // alert("이미 로그인중이므로 회원 가입 하실 수 없습니다.", "./");
    if ($is_member) {
        goto_url(G5_URL);
    }
    // 리퍼러 체크
/*    referer_check();
    if (!isset($_POST['agree']) || !$_POST['agree']) {
        alert('회원가입약관의 내용에 동의하셔야 회원가입 하실 수 있습니다.', G5_BBS_URL.'/register.php');
    }
    if (!isset($_POST['agree2']) || !$_POST['agree2']) {
        alert('개인정보처리방침안내의 내용에 동의하셔야 회원가입 하실 수 있습니다.', G5_BBS_URL.'/register.php');
    }
*/
    $agree  = preg_replace('#[^0-9]#', '', $_POST['agree']);
    $agree2 = preg_replace('#[^0-9]#', '', $_POST['agree2']);
    $member['mb_birth'] = '';
    $member['mb_sex']   = '';
    $member['mb_name']  = '';
    if (isset($_POST['birth'])) {
        $member['mb_birth'] = $_POST['birth'];
    }
    if (isset($_POST['sex'])) {
        $member['mb_sex']   = $_POST['sex'];
    }
    if (isset($_POST['mb_name'])) {
        $member['mb_name']  = $_POST['mb_name'];
    }

} else if ($w == 'u') {
    if ($is_admin)
        alert('관리자의 회원정보는 관리자 화면에서 수정해 주십시오.', G5_URL);
    if (!$is_member)
        alert('로그인 후 이용하여 주십시오.', G5_URL);
    if ($member['mb_id'] != $_POST['mb_id'])
        alert('로그인된 회원과 넘어온 정보가 서로 다릅니다.');
    /*
    if (!($member[mb_password] == sql_password($_POST[mb_password]) && $_POST[mb_password]))
        alert("비밀번호가 틀립니다.");
    // 수정 후 다시 이 폼으로 돌아오기 위해 임시로 저장해 놓음
    set_session("ss_tmp_password", $_POST[mb_password]);
    */
    if ($_POST['mb_password']) {
        // 수정된 정보를 업데이트후 되돌아 온것이라면 비밀번호가 암호화 된채로 넘어온것임
        if ($_POST['is_update'])
            $tmp_password = $_POST['mb_password'];
        else
            $tmp_password = get_encrypt_string($_POST['mb_password']);
        if ($member['mb_password'] != $tmp_password)
            alert('비밀번호가 틀립니다.');
    }
    $g5['title'] = '회원 정보 수정';
    set_session("ss_reg_mb_name", $member['mb_name']);
    set_session("ss_reg_mb_hp", $member['mb_hp']);
    $member['mb_email']       = get_text($member['mb_email']);
    $member['mb_homepage']    = get_text($member['mb_homepage']);
    $member['mb_birth']       = get_text($member['mb_birth']);
    $member['mb_tel']         = get_text($member['mb_tel']);
    $member['mb_hp']          = get_text($member['mb_hp']);
    $member['mb_addr1']       = get_text($member['mb_addr1']);
    $member['mb_addr2']       = get_text($member['mb_addr2']);
    $member['mb_signature']   = get_text($member['mb_signature']);
    $member['mb_recommend']   = get_text($member['mb_recommend']);
    $member['mb_profile']     = get_text($member['mb_profile']);
    $member['mb_1']           = get_text($member['mb_1']);
    $member['mb_2']           = get_text($member['mb_2']);
    $member['mb_3']           = get_text($member['mb_3']);
    $member['mb_4']           = get_text($member['mb_4']);
    $member['mb_5']           = get_text($member['mb_5']);
    $member['mb_6']           = get_text($member['mb_6']);
    $member['mb_7']           = get_text($member['mb_7']);
    $member['mb_8']           = get_text($member['mb_8']);
    $member['mb_9']           = get_text($member['mb_9']);
    $member['mb_10']          = get_text($member['mb_10']);
} else {
    alert('w 값이 제대로 넘어오지 않았습니다.');
}
include_once('./_head.php');
// 회원아이콘 경로
$mb_icon_path = G5_DATA_PATH.'/member/'.substr($member['mb_id'],0,2).'/'.$member['mb_id'].'.gif';
$mb_icon_url  = G5_DATA_URL.'/member/'.substr($member['mb_id'],0,2).'/'.$member['mb_id'].'.gif';
// 회원이미지 경로
$mb_img_path = G5_DATA_PATH.'/member_image/'.substr($member['mb_id'],0,2).'/'.$member['mb_id'].'.gif';
$mb_img_url  = G5_DATA_URL.'/member_image/'.substr($member['mb_id'],0,2).'/'.$member['mb_id'].'.gif';
$register_action_url = G5_HTTPS_BBS_URL.'/register_form.php';
$req_nick = !isset($member['mb_nick_date']) || (isset($member['mb_nick_date']) && $member['mb_nick_date'] <= date("Y-m-d", G5_SERVER_TIME - ($config['cf_nick_modify'] * 86400)));
$required = ($w=='') ? 'required' : '';
$readonly = ($w=='u') ? 'readonly' : '';
$agree  = preg_replace('#[^0-9]#', '', $agree);
$agree2 = preg_replace('#[^0-9]#', '', $agree2);

// add_javascript('js 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
if ($config['cf_use_addr'])
    add_javascript(G5_POSTCODE_JS, 0);    //다음 주소 js
include_once('./_tail.php');
?>

 

web/theme/basic/mobile/skin/member/basic/register.skin.php


<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.$member_skin_url.'/style.css">', 0);
?>

<div class="mbskin">
    <?php
    // 소셜로그인 사용시 소셜로그인 버튼
    @include_once(get_social_skin_path().'/social_register.skin.php');
    ?>
    
    <div class="mb_login_member bg_white">
        <h2>회원가입</h2>
        <p>회원가입을 원하시는 이용 목적을 선택하세요.</p>
        <input type="submit" id="mb_free" class="btn_submit mb_login" name="mb_member" value="1">
        <label for="mb_free">개인회원</label>
        <input type="submit" id="mb_company" class="btn_submit mb_login" name="mb_member" value="2">
        <label for="mb_company">기업회원</label>
    </div>
    
</div>

 


register_form.skin.free.php 은 register_form.skin.php 복사했습니다.

분류하려는데 뭐가 문제일까요 1 2 를 누르면 에러도 안뜨고.. 넘어갈생각도 않네요 ㅠ

이 질문에 댓글 쓰기 :

답변 2

질문을 좀더 정리해서 간결하게 올려주셔야 좀더 쉽게 파악이 가능할 것 같습니다 ㅠㅠ

bbs / register_form.php


if($_POST['mb_member'] == '1') { // $_POST 로 받아온 값이 1(개인회원)일 경우
    include_once($skin_path.'/register_form.skin.free.php'); // 개인회원 회원가입 페이지를 불러옴
elseif ($_POST['mb_member'] == '2') { // $_POST 로 받아온 값이 2(기업회원)일 경우
    include_once($skin_path.'/register_form.skin.php'); //  기업회원 회원가입 페이지를 불러옴
}



web/theme/basic/mobile/skin/member/basic/register.skin.php

        <input type="submit" id="mb_free" class="btn_submit mb_login" name="mb_member" value="1">
        <label for="mb_free">개인회원</label>
        <input type="submit" id="mb_company" class="btn_submit mb_login" name="mb_member" value="2">
        <label for="mb_company">기업회원</label>

web/theme/basic/mobile/skin/member/basic/register.skin.php 여기서 개인회원 기업회원 클릭을 하면

bbs / register_form.php 일로 넘어가서 넘어온 값을 구분해서 가입 양식을 보여준다는거죠?

그러면 POST로 값이 제대로 넘어오던가요?

제가 봤을때는


<form action="경로">
<input type="submit" id="mb_free" class="btn_submit mb_login" name="mb_member" value="1">
<label for="mb_free">개인회원</label>
</form>

<form action="경로">
<input type="submit" id="mb_company" class="btn_submit mb_login" name="mb_member" value="2">
<label for="mb_company">기업회원</label>
</form>


이렇게 나눠서 던져줘야 구분이 되실거같은데 위 소스처럼이 아니더라도 값을 제대로 넘겨주면 될거같아요!

post 경로에러가 없다고 뜹니다..

제가 register_form.skin.php를 복사해서
register_form.skin.free.php 라는 양식을
web/theme/basic/mobile/skin/member/basic 안에 넣은건데 맞나요?

action="register_form.skin.php"
action="register_form.skin.free.php"

bbs에서 뭘 더 해줘야되나요??

구글링해보니깐
register_form_update.php 에 뭘 더 해줘야할까요,,,

skin을 두개를 만드셨구나..

POST로 넘어온 값이 1인지 2인지는 되는거죠?


그러면 bbs / register_form.php 여기말고

register_form.skin.php 안에다가

양식부분만 따로빼서 파일만드셔서

include로 가져오면 되지않을까요?

아녀.... 스킨하나 더만든건 삭제했어요 ㅜㅜ
혹시 그럼
register.skin.php에서 기업회원 개인회원 을 클릭햇을때로해서
register_form.skin.php 에서
똑같은 스킨안에서 각각 다르게 여분필드로 나오게하고싶은데.....
어떻게해야되나요 ??
if 문이 필요할까요?

그쵸 위에 쓰셨던거 그대로 넣어주시면 되지 않을까요?

if($_POST['mb_member'] == '1') { // $_POST 로 받아온 값이 1(개인회원)일 경우
    include_once($skin_path.'/개인회원폼.php'); // 개인회원 회원가입 페이지를 불러옴
}else if ($_POST['mb_member'] == '2') { // $_POST 로 받아온 값이 2(기업회원)일 경우
    include_once($skin_path.'/기업회원폼'); //  기업회원 회원가입 페이지를 불러옴
}

음ㅋㅋㅋㅋ 댓글이 엄청기네요 ㅋㅋㅋㅋ

네 메인도 동일하게 해셔도됩니다.

if문으로 나눠가지고 해당 값일때 A양식 incldue 하거나 B양식 include 하면 되겠죠?

질문은 이해했는데, 이 많은 코드를 나열해놓고 안되는 이유를 찾는건 무리입니다.

 

순정소스로 복구해놓고 한줄씩 삽입하면서 에러를 찾아가는게 맞는듯합니다.

 

답변을 작성하시기 전에 로그인 해주세요.
전체 40
QA 내용 검색

회원로그인

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