입력한 아이디가 베틀넷에 존재하는 아이디인가 확인하는 회원가입 ajax > 그누4 팁자료실

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!

그누4 팁자료실

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

입력한 아이디가 베틀넷에 존재하는 아이디인가 확인하는 회원가입 ajax 정보

입력한 아이디가 베틀넷에 존재하는 아이디인가 확인하는 회원가입 ajax

본문

제대로 작동하는 지는 위에 링크를 통해 확인해주세요.

ajax_register_form.js 에 다음라인 추가
---------------------
// 베틀넷 검사
function reg_bnet_check() {
    var url = member_skin_path + "/ajax_bnet_check.php";
    var para = "reg_bnet="+encodeURIComponent($F('reg_bnet'));
    var myAjax = new Ajax.Request(
        url,
        {
            method: 'post',
            // 주소창 보안 방지 javascript:void(document.fregisterform.mb_id_enabled.value='000');
            // 동기식 (폼전송시 입력값이 바른지 검사한 후 mb_id_enabled 를 체크하기 때문)
            asynchronous: false,
            parameters: para,
            onComplete: return_reg_bnet_check
        });
}

function return_reg_bnet_check(req) {
    var msg = $('msg_bnet');
    var result = req.responseText;
    switch(result) {
        case '110' : msg.update('별명은 공백없이 한글, 영문, 숫자만 입력 가능합니다.').setStyle({ color: 'red' }); break;
        case '120' : msg.update('한글 2글자, 영문 4글자 이상 입력 가능합니다.').setStyle({ color: 'red' }); break;
        case '130' : msg.update('베틀넷에 존재하지 않는 아이디').setStyle({ color: 'red' }); break;
        case '000' : msg.update('베틀넷에 존재하는 아이디').setStyle({ color: 'blue' }); break;
        default : alert( '잘못된 접근입니다.\n\n' + result ); break;
    }
    $('bnet_enabled').value = result;
}

ajax_bnet_check.php 파일생성
-----------------------------
<?
include_once("_common.php");

if (!function_exists('convert_charset')) {
    /*
    -----------------------------------------------------------
        Charset 을 변환하는 함수
    -----------------------------------------------------------
    iconv 함수가 있으면 iconv 로 변환하고
    없으면 mb_convert_encoding 함수를 사용한다.
    둘다 없으면 사용할 수 없다.
    */
    function convert_charset($from_charset, $to_charset, $str) {

        if( function_exists('iconv') )
            return iconv($from_charset, $to_charset, $str);
        elseif( function_exists('mb_convert_encoding') )
            return mb_convert_encoding($str, $to_charset, $from_charset);
        else
            die("Not found 'iconv' or 'mbstring' library in server.");
    }
}

$reg_bnet = convert_charset('UTF-8','CP949',$reg_bnet);

 

 

 

$traffic_url="asialadders.battle.net";
$traffic_query="/war3/ladder/W3XP-player-profile.aspx?Gateway=Kalimdor&PlayerName=$reg_bnet";
$traffic_title="토익타운";
$traffic_port=80;
$connect_timeout=5;

   // 제로보드의 경우에만 필요함
  $traffic_fp = @fsockopen ($traffic_url, $traffic_port, $errno, $errstr, $connect_timeout);
  $traffic_temp = @fputs ($traffic_fp, "GET ".$traffic_query." HTTP/1.0\r\nHost: ".$traffic_url."\r\n\r\n");

  $throttle_link = "http://".$traffic_url;

  if (!isset($traffic_temp) || $traffic_temp == false || $traffic_temp == 0) {
   //echo "서버에 접속할 수 없습니다! [<font color=red><b>$traffic_url</b></font>]<br>$throttle_link";
  }

  $traffic_line_no = 0;

  while (!feof ($traffic_fp)) {
   $buffer[$traffic_line_no] = @fgets($traffic_fp, 128);

   // 시작 부분을 검출
   if (eregi("<HTML>", $buffer[$traffic_line_no])) {
    $traffic_html_start = $traffic_line_no;
   }
   $traffic_line_no++;
  }


  // 242 번 라인에서 사용량의 % 를 가져옴
$eee = trim(strip_tags($buffer[$traffic_html_start+284]));
$eee2 = trim(strip_tags($buffer[$traffic_html_start+285]));
$eee3 = trim(strip_tags($buffer[$traffic_html_start+286]));
$eee4 = trim(strip_tags($buffer[$traffic_html_start+287]));
$eee5 = trim(strip_tags($buffer[$traffic_html_start+288]));
if (eregi("Clan Name:", $eee)){$exex="1";}
if (eregi("Clan Name:", $eee2)){$exex="1";}
if (eregi("Clan Name:", $eee3)){$exex="1";}
if (eregi("Clan Name:", $eee4)){$exex="1";}
if (eregi("Clan Name:", $eee5)){$exex="1";}

 

 

 

// 별명은 한글, 영문, 숫자만 가능
if (strlen($reg_bnet) < 3) {
    echo "120"; // 4글자 이상 입력
} else {
    $row = sql_fetch(" select count(*) as cnt from $g4[member_table] where mb_nick = '$reg_bnet' ");
    if (!$exex) {
        echo "130"; // 이미 존재하는 별명
    } else {
        echo "000"; // 정상
    }
}
?>

register_form.skin.php 원하는 위치에 삽입
--------------------
  <input type=hidden name=bnet_default value='<?=$member[mb_1]?>'>
   <TR bgcolor="#FFFFFF">
            <TD class=m_title>베틀넷아이디(Asia서버만가능)</TD>
            <TD class='m_padding lh'>
                <input class=ed type=text id='reg_bnet' name='mb_1' maxlength=20 value='<?=$member[mb_1]?>' onblur="reg_bnet_check()">
    <span id='msg_bnet'></span>
                <br>베틀넷 아이디는 한번 입력하면 변경 할 수 없습니다.
    <br>게임 참가시 자동으로 입력된 베틀넷아이디가 출력되니 정확히 입력해주세요
    <br>*베틀넷아이디 입력에 오류가 있으신분은 잠시후에 시도하시거나 <br><a href="http://chaos.inour.net/bbs/board.php?bo_table=service" ><b>의견및 불편사항 게시판</b></a>에 질문 해주세요.
            </TD>
        </TR>


register_form.skin.php 하단에 자바스크립트 //별명검사 밑에 넣으면됨 있는부분에 삽입
--------------------

 // 베틀넷 검사
    if ((f.w.value == "") ||
        (f.w.value == "u" && f.bnet.defaultValue != f.bnet.value)) {

        reg_mb_nick_check();

        if ($F('bnet_enabled')!='000') {
            alert('베틀넷아이디를 입력하지 않았거나 존재하지않는 아이디입니다.');
            $('reg_bnet').activate();
            return false;
        }
    }


추천
0

댓글 0개

전체 0 |RSS
그누4 팁자료실 내용 검색
  • 개별 목록 구성 번호 제목 작성자 작성일 추천 조회
  • 게시물이 없습니다.

회원로그인

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