KCP 창업 지원, 수수료 국내최저 2.9% 제공 이벤트!

아이디,별명 금지단어 강화 > 그누4 팁자료실

그누보드5
영카트5
스터디
Q & A
제작의뢰
컨텐츠몰
부가서비스
소모임
커뮤니티
부가서비스
KCP 이벤트!

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

아이디,별명 금지단어 강화 정보

아이디,별명 금지단어 강화

본문

관리자 페이지에 설명은 "입력된 단어가 포함된 내용은 회원아이디, 별명으로 사용할 수 없습니다." 라고 되어 있지만
실제 그누보드에서는 '단어가 포함된 내용' 이 아니라 '단어와 일치한 내용' 만 걸러집니다.

다음과 같이 수정하시면 해결이 됩니다.


1) bbs/register_form_update.php 파일
----

수정전
    if (preg_match("/[\,]?{$mb_id}/i", $config[cf_prohibit_id]))
        alert("\'$mb_id\' 은(는) 예약어로 사용하실 수 없는 회원아이디입니다.");

    if (preg_match("/[\,]?{$mb_nick}/i", $config[cf_prohibit_id]))
        alert("\'$mb_nick\' 은(는) 예약어로 사용하실 수 없는 별명입니다.");

수정후
    $wrd = explode(",", $config[cf_prohibit_id]);
    for ($i=0, $m=count($wrd); $i<$m; $i++) {
        $tmp = trim($wrd[$i]);
        if (preg_match("/{$tmp}/i", $mb_id))
            alert("\'$mb_id\' 은(는) 예약어로 사용하실 수 없는 회원아이디입니다.");
        if (preg_match("/{$tmp}/i", $mb_nick))
            alert("\'$mb_nick\' 은(는) 예약어로 사용하실 수 없는 별명입니다.");
    }

2) skin/member/사용중인회원스킨/ajax_mb_id_check.php 파일
----

수정전
    $row = sql_fetch(" select count(*) as cnt from $g4[member_table] where mb_id = '$reg_mb_id' ");
    if ($row[cnt]) {
        echo "130"; // 이미 존재하는 회원아이디
    } else {
        if (preg_match("/[\,]?{$reg_mb_id}/i", $config[cf_prohibit_id]))
            echo "140"; // 예약어로 금지된 회원아이디
        else
            echo "000"; // 정상
    } 

수정후
    $row = sql_fetch(" select count(*) as cnt from $g4[member_table] where mb_id = '$reg_mb_id' ");
    if ($row[cnt]) {
        echo "130"; // 이미 존재하는 회원아이디
    } else {
        $wrd = explode(",", $config[cf_prohibit_id]);
        for ($i=0, $m=count($wrd); $i<$m; $i++) {
            $tmp = trim($wrd[$i]);
            if (preg_match("/{$tmp}/i", $reg_mb_id)) {
                echo "140"; exit;
            }
        }
        echo "000";
    }

3) skin/member/사용중인회원스킨/ajax_mb_nick_check.php 파일
----

수정전
    $row = sql_fetch(" select count(*) as cnt from $g4[member_table] where mb_nick = '$reg_mb_nick' ");
    if ($row[cnt]) {
        echo "130"; // 이미 존재하는 별명
    } else {
        echo "000"; // 정상
    }

수정후
    $row = sql_fetch(" select count(*) as cnt from $g4[member_table] where mb_nick = '$reg_mb_nick' ");
    if ($row[cnt]) {
        echo "130"; // 이미 존재하는 별명
    } else {
        $wrd = explode(",", $config[cf_prohibit_id]);
        for ($i=0, $m=count($wrd); $i<$m; $i++) {
            $tmp = trim($wrd[$i]);
            if (preg_match("/{$tmp}/i", $reg_mb_nick)) {
                echo "140"; exit;
            }
        }
        echo "000";
    }

4) skin/member/사용중인회원스킨/ajax_register_form.jquery.js 파일 case '140' 라인 추가
----

    switch(result) {
        case '110' : msg.html('별명은 공백없이 한글, 영문, 숫자만 입력 가능합니다.').css('color', 'red'); break;
        case '120' : msg.html('한글 2글자, 영문 4글자 이상 입력 가능합니다.').css('color', 'red'); break;
        case '130' : msg.html('이미 존재하는 별명입니다.').css('color', 'red'); break;
        case '140' : msg.html('예약어로 사용할 수 없는 별명 입니다.').css('color', 'red'); break; // 추가
        case '000' : msg.html('사용하셔도 좋은 별명 입니다.').css('color', 'blue'); break;
        default : alert( '잘못된 접근입니다.\n\n' + result ); break;
    }
추천8

댓글 전체

적용해 보았는데 회원정보 수정시 아이디, 닉네임 사용할 수 없다는 메시지창이 뜨고 정보 수정을
할 수가 없네요. 저만 그런가요?
전체 3,328 |RSS
그누4 팁자료실 내용 검색

회원로그인

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

© SIRSOFT