테스트 사이트 - 개발 중인 베타 버전입니다

회원가입 질문이요 채택완료

obli 6년 전 조회 3,390

register.php

</p>

<p><?php

include_once('./_common.php');</p>

<p>// 로그인중인 경우 회원가입 할 수 없습니다.

if ($is_member) {

    goto_url(G5_URL);

}</p>

<p>// 세션을 지웁니다.

set_session("ss_mb_reg", "");</p>

<p>$g5['title'] = '회원가입약관';

include_once('./_head.php');</p>

<p>$register_action_url = G5_BBS_URL.'/register_form.php';

include_once($member_skin_path.'/register.skin.php');</p>

<p>include_once('./_tail.php');

?></p>

<p>

 

bbs / register_form.php

</p>

<p><?php

include_once('./_common.php');

include_once(G5_CAPTCHA_PATH.'/captcha.lib.php');

include_once(G5_LIB_PATH.'/register.lib.php');</p>

<p>// 불법접근을 막도록 토큰생성

$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", "");</p>

<p>

if($_POST['mb_member'] == '1') { // $_POST 로 받아온 값이 1(개인회원)일 경우

    include_once($skin_path.'/register_form.skin.free.php'); // 개인회원 회원가입 페이지를 불러옴</p>

<p>elseif ($_POST['mb_member'] == '2') { // $_POST 로 받아온 값이 2(기업회원)일 경우

    include_once($skin_path.'/register_form.skin.php'); //  기업회원 회원가입 페이지를 불러옴

}</p>

<p>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'];

    }

}</p>

<p>if ($w == "") {</p>

<p>    // 회원 로그인을 한 경우 회원가입 할 수 없다

    // 경고창이 뜨는것을 막기위해 아래의 코드로 대체

    // alert("이미 로그인중이므로 회원 가입 하실 수 없습니다.", "./");

    if ($is_member) {

        goto_url(G5_URL);

    }</p>

<p>    // 리퍼러 체크

/*    referer_check();</p>

<p>    if (!isset($_POST['agree']) || !$_POST['agree']) {

        alert('회원가입약관의 내용에 동의하셔야 회원가입 하실 수 있습니다.', G5_BBS_URL.'/register.php');

    }

    if (!isset($_POST['agree2']) || !$_POST['agree2']) {

        alert('개인정보처리방침안내의 내용에 동의하셔야 회원가입 하실 수 있습니다.', G5_BBS_URL.'/register.php');

    }

*/</p>

<p>    $agree  = preg_replace('#[^0-9]#', '', $_POST['agree']);

    $agree2 = preg_replace('#[^0-9]#', '', $_POST['agree2']);</p>

<p>    $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'];

    }</p>

<p>

} else if ($w == 'u') {</p>

<p>    if ($is_admin)

        alert('관리자의 회원정보는 관리자 화면에서 수정해 주십시오.', G5_URL);</p>

<p>    if (!$is_member)

        alert('로그인 후 이용하여 주십시오.', G5_URL);</p>

<p>    if ($member['mb_id'] != $_POST['mb_id'])

        alert('로그인된 회원과 넘어온 정보가 서로 다릅니다.');</p>

<p>    /*

    if (!($member[mb_password] == sql_password($_POST[mb_password]) && $_POST[mb_password]))

        alert("비밀번호가 틀립니다.");</p>

<p>    // 수정 후 다시 이 폼으로 돌아오기 위해 임시로 저장해 놓음

    set_session("ss_tmp_password", $_POST[mb_password]);

    */</p>

<p>    if ($_POST['mb_password']) {

        // 수정된 정보를 업데이트후 되돌아 온것이라면 비밀번호가 암호화 된채로 넘어온것임

        if ($_POST['is_update'])

            $tmp_password = $_POST['mb_password'];

        else

            $tmp_password = get_encrypt_string($_POST['mb_password']);</p>

<p>        if ($member['mb_password'] != $tmp_password)

            alert('비밀번호가 틀립니다.');

    }

    $g5['title'] = '회원 정보 수정';</p>

<p>    set_session("ss_reg_mb_name", $member['mb_name']);

    set_session("ss_reg_mb_hp", $member['mb_hp']);</p>

<p>    $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 값이 제대로 넘어오지 않았습니다.');

}</p>

<p>include_once('./_head.php');</p>

<p>// 회원아이콘 경로

$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';</p>

<p>// 회원이미지 경로

$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';</p>

<p>$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' : '';</p>

<p>$agree  = preg_replace('#[^0-9]#', '', $agree);

$agree2 = preg_replace('#[^0-9]#', '', $agree2);</p>

<p>

// add_javascript('js 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨

if ($config['cf_use_addr'])

    add_javascript(G5_POSTCODE_JS, 0);    //다음 주소 js

include_once('./_tail.php');

?></p>

<p>

 

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

</p>

<p><?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가</p>

<p>// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨

add_stylesheet('<link rel="stylesheet" href="'.$member_skin_url.'/style.css">', 0);

?></p>

<p>

<div class="mbskin"></p>

<p>    <?php

    // 소셜로그인 사용시 소셜로그인 버튼

    @include_once(get_social_skin_path().'/social_register.skin.php');

    ?>

    </p>

<p>    <div class="mb_login_member bg_white">

        <h2>회원가입</h2>

        <p>회원가입을 원하시는 이용 목적을 선택하세요&#46;</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></p>

<p>

 


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

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

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
하틴
6년 전

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

로그인 후 평가할 수 있습니다

답변에 대한 댓글 10개

o
obli
6년 전
bbs / register_form.php
[code]
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'); // 기업회원 회원가입 페이지를 불러옴
}
[/code]


web/theme/basic/mobile/skin/member/basic/register.skin.php
[code]
<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>
[/code]
o
obli
6년 전
제가 추가한것은 이것입니다 ㅜㅜ
하틴
6년 전
web/theme/basic/mobile/skin/member/basic/register.skin.php 여기서 개인회원 기업회원 클릭을 하면

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

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

제가 봤을때는
[code]
<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>
[/code]

이렇게 나눠서 던져줘야 구분이 되실거같은데 위 소스처럼이 아니더라도 값을 제대로 넘겨주면 될거같아요!
o
obli
6년 전
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 에 뭘 더 해줘야할까요,,,
하틴
6년 전
skin을 두개를 만드셨구나..

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


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

register_form.skin.php 안에다가

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

include로 가져오면 되지않을까요?
o
obli
6년 전
아녀.... 스킨하나 더만든건 삭제했어요 ㅜㅜ
혹시 그럼
register.skin.php에서 기업회원 개인회원 을 클릭햇을때로해서
register_form.skin.php 에서
똑같은 스킨안에서 각각 다르게 여분필드로 나오게하고싶은데.....
어떻게해야되나요 ??
if 문이 필요할까요?
하틴
6년 전
그쵸 위에 쓰셨던거 그대로 넣어주시면 되지 않을까요?

if($_POST['mb_member'] == '1') { // $_POST 로 받아온 값이 1(개인회원)일 경우
include_once($skin_path.'/개인회원폼.php'); // 개인회원 회원가입 페이지를 불러옴
}else if ($_POST['mb_member'] == '2') { // $_POST 로 받아온 값이 2(기업회원)일 경우
include_once($skin_path.'/기업회원폼'); // 기업회원 회원가입 페이지를 불러옴
}
o
obli
6년 전
성공은했는데 잘한건지모르겟어여....ㅎㅎㅎㅠ
또 질문올렸네요.........하하
o
obli
6년 전
하틴 님.. 혹시 index.php 도 이런식으로하면 될까요ㅇ?
하틴
6년 전
음ㅋㅋㅋㅋ 댓글이 엄청기네요 ㅋㅋㅋㅋ

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

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

댓글을 작성하려면 로그인이 필요합니다.

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

 

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

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

o
obli
6년 전
ㅜㅜ 넵..... 여러번 해보았는데 안되네요 ㅜㅜ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인