[초보]소스분석을 대충해봣는데.....회원가입 아이디 중보확인관련..

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
[초보]소스분석을 대충해봣는데.....회원가입 아이디 중보확인관련..

QA

[초보]소스분석을 대충해봣는데.....회원가입 아이디 중보확인관련..

본문

오류가 나는곳의 주소를 알려주시면 더 빠르고 정확하게 답변 받을 수 있습니다.

오류 주소 :
G4에서는 아이디중복확인이 아약스로 구동이 되었었습니다.

그런데 지금 보니
G5에서 이 아약스 아이디 중복확인이 안되는 줄알앗는데.. 자세히 소스를 보니 소스가 있긴 잇는것같은데 ..작동을 안하는것같습니다..


우선 스킨 파일 상당에보면

<script src="<?php echo G5_JS_URL ?>/jquery.register_form.js"></script>

따라가보니..

///jquery.register_form.js////

var reg_mb_id_check = function() {
    var result = "";
    $.ajax({
        type: "POST",
        url: g5_bbs_url+"/ajax.mb_id.php",
        data: {
            "reg_mb_id": encodeURIComponent($("#reg_mb_id").val())
        },
        cache: false,
        async: false,
        success: function(data) {
            result = data;
        }
    });
    return result;
}



//////bbs/ajax_mb_id.php////////


<?php
include_once('./_common.php');
include_once(G5_LIB_PATH.'/register.lib.php');

$mb_id = escape_trim($_POST['reg_mb_id']);

if ($msg = empty_mb_id($mb_id))    die($msg);
if ($msg = valid_mb_id($mb_id))    die($msg);
if ($msg = count_mb_id($mb_id))    die($msg);
if ($msg = exist_mb_id($mb_id))    die($msg);
if ($msg = reserve_mb_id($mb_id))  die($msg);
?>




//////lib/register.lib.php////////

if (!defined('_GNUBOARD_')) exit;

function empty_mb_id($reg_mb_id)
{
    if (trim($reg_mb_id)=='')
        return "회원아이디를 입력해 주십시오.";
    else
        return "";
}

function valid_mb_id($reg_mb_id)
{
    if (preg_match("/[^0-9a-z_]+/i", $reg_mb_id))
        return "회원아이디는 영문자, 숫자, _ 만 입력하세요.";
    else
        return "";
}

function count_mb_id($reg_mb_id)
{
    if (strlen($reg_mb_id) < 3)
        return "회원아이디는 최소 3글자 이상 입력하세요.";
    else
        return "";
}

function exist_mb_id($reg_mb_id)
{
    global $g5;

    $reg_mb_id = trim($reg_mb_id);
    if ($reg_mb_id == "") return "";

    $sql = " select count(*) as cnt from `{$g5['member_table']}` where mb_id = '$reg_mb_id' ";
    $row = sql_fetch($sql);
    if ($row['cnt'])
        return "이미 사용중인 회원아이디 입니다.";
    else
        return "";
}





이게.....아약스구동파일이아닌가요 ?.......?;;ㅎㅎ;

그냥 초보의 눈으로 봤을때 파일이 있는것같은데..실행이 안되는것같아서 여쭈어봐요!

이 질문에 댓글 쓰기 :

답변 3

말씀하신 내용은 접근성과 관련하여 자바스크립트 사용이 불가한 환경에서도 사용할 수 있도록 하기위하여 빠져있습니다.
그러나 현재 개발진 내부에서는 ajax를 이용한 체크기능을 추가하는 방향을 고려 중에 있습니다.
정 쓰실거면
스크립트 추가하시구요
※ 함수명은 바꾸셔도 상관없습니다.

function mb_id_check() {
    var msg = reg_mb_id_check();
    if (msg) {
            $("#msg_mb_id").text(msg);
            $("#reg_mb_id").select();
    } else 
            $("#msg_mb_id").text("");	
}


아이디 input 박스에 onblur="mb_id_check();" 추가해주세요
※ 스크립트 작성시 함수명을 달리 하셨다면 여기도 바꿔주셔야 합니다.
 

    <td>
        <span class="frm_info">영문자, 숫자, _ 만 입력 가능. 최소 3자이상 입력하세요.</span>
        <input type="text" name="mb_id" value="<?php echo $member['mb_id'] ?>" id="reg_mb_id" <?php echo $required ?> <?php echo $readonly ?> class="frm_input minlength_3 <?php echo $required ?> <?php echo $readonly ?>"maxlength="20" onblur="mb_id_check();">
        <span id="msg_mb_id"></span>
    </td>
그누보드를 설치하시고
회원가입 페이지를 수정하지 않으셨다면 정상적으로 아이디 중복 체크가 이루어질텐데
안된다고 하신 사이트 테스트가 가능할까요??

안녕하세요~!  혹시나해서 새로 설치해봤는데.. 안되네요.. 회원가입버튼 눌럿을때 나오는 아이디 중복확인 말구요!
아이디 입력란 옆에 아이디 중복확인 버튼이없어요.  여기 sir 홈페이지같은경우는 회원가입시에 아이디를 입력하고 tab 키 눌러서 포커스아웃시키면 우측으로 사용하셔도 좋은 아이디입니다 라는 실시간으로 중복검색이 되는걸 말한거예여~!

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

회원로그인

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