ajax이용할때 구글캡챠V2(reCAPTCHA v2) 체크박스 리셋시키기 > 그누보드5 팁자료실

그누보드5 팁자료실

ajax이용할때 구글캡챠V2(reCAPTCHA v2) 체크박스 리셋시키기 정보

ajax이용할때 구글캡챠V2(reCAPTCHA v2) 체크박스 리셋시키기

본문

회원가입이나 글쓰기시 AJAX로 통신하다보면 검증값때문에 더이상 진행이 안될때 구글챕챠를 리셋하고 다시 인증해야하는 상황이 있습니다.

 

/plugin/recaptcha|recaptcha.user.lib.php

 

// 캡챠 HTML 코드 출력
function captcha_html($class="captcha")
{

    global $config;

    /*
    #hl=ko 표시는 언어지정가능
    */
    $html = '<fieldset id="captcha" class="captcha recaptcha">';
    //$html .= '<script src="https://www.google.com/recaptcha/api.js?hl=ko"></script>';
    $html .= '<script src="https://www.google.com/recaptcha/api.js?onload=onload_grecaptchaCallback&render=explicit"></script>';
    $html .= '<script src="'.G5_CAPTCHA_URL.'/recaptcha.js"></script>';
    $html .= '<div class="g-recaptcha" id="g-recaptcha" data-sitekey="'.$config['cf_recaptcha_site_key'].'"></div>';
    $html .= '</fieldset>';

    return $html;
}

 



/plugin/recaptcha|recaptcha.js 하단에 추가

var grecaptchaId;
var onload_grecaptchaCallback = function() {
    grecaptchaId = grecaptcha.render('g-recaptcha', {
      'sitekey' : document.querySelector('#g-recaptcha').getAttribute("data-sitekey"),
      'theme' : 'light' //dark
    });
};

 

초기화 시킬때는 자바스크립트로

grecaptcha.reset(grecaptchaId);

 

이렇게 해주시면 됩니다.

추천
0

댓글 0개

전체 2,405 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

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