Twave 테마 회원가입 시 캡챠 검증 안하는 오류 해결
본문
버전: TwaveCv2 또는 Twave
/theme/TwaveCv2(또는Tewave)/mobile/skin/member/register_form.php
의 가장 하단 스크립트를 아래의 코드로 덮어씌우기
/theme/TwaveCv2(또는Tewave)/mobile/skin/member/register_form.php
의 가장 하단 스크립트를 아래의 코드로 덮어씌우기
<script>
$(function() {
$("#reg_zip_find").css("display", "inline-block");
var pageTypeParam = "pageType=register";
<?php if($config['cf_cert_use'] && $config['cf_cert_simple']) { ?>
// 이니시스 간편인증
var url = "<?php echo G5_INICERT_URL; ?>/ini_request.php";
var type = "";
var params = "";
var request_url = "";
$(".win_sa_cert").click(function() {
if(!cert_confirm()) return false;
type = $(this).data("type");
params = "?directAgency=" + type + "&" + pageTypeParam;
request_url = url + params;
call_sa(request_url);
});
<?php } ?>
<?php if($config['cf_cert_use'] && $config['cf_cert_ipin']) { ?>
// 아이핀인증
var params = "";
$("#win_ipin_cert").click(function() {
if(!cert_confirm()) return false;
params = "?" + pageTypeParam;
var url = "<?php echo G5_OKNAME_URL; ?>/ipin1.php"+params;
certify_win_open('kcb-ipin', url);
return;
});
<?php } ?>
<?php if($config['cf_cert_use'] && $config['cf_cert_hp']) { ?>
// 휴대폰인증
var params = "";
$("#win_hp_cert").click(function() {
if(!cert_confirm()) return false;
params = "?" + pageTypeParam;
<?php
switch($config['cf_cert_hp']) {
case 'kcb':
$cert_url = G5_OKNAME_URL.'/hpcert1.php';
$cert_type = 'kcb-hp';
break;
case 'kcp':
$cert_url = G5_KCPCERT_URL.'/kcpcert_form.php';
$cert_type = 'kcp-hp';
break;
case 'lg':
$cert_url = G5_LGXPAY_URL.'/AuthOnlyReq.php';
$cert_type = 'lg-hp';
break;
default:
echo 'alert("기본환경설정에서 휴대폰 본인확인 설정을 해주십시오");';
echo 'return false;';
break;
}
?>
certify_win_open("<?php echo $cert_type; ?>", "<?php echo $cert_url; ?>"+params);
return;
});
<?php } ?>
});
// submit 최종 폼체크
function fregisterform_submit(f)
{
if (f.w.value == "") {
if (f.mb_password.value.length < 3) {
alert("비밀번호를 3글자 이상 입력하십시오.");
f.mb_password.focus();
return false;
}
}
if (f.mb_password.value != f.mb_password_re.value) {
alert("비밀번호가 같지 않습니다.");
f.mb_password_re.focus();
return false;
}
if (f.mb_password.value.length > 0) {
if (f.mb_password_re.value.length < 3) {
alert("비밀번호를 3글자 이상 입력하십시오.");
f.mb_password_re.focus();
return false;
}
}
// 이름 검사
if (f.w.value=="") {
if (f.mb_name.value.length < 1) {
alert("이름을 입력하십시오.");
f.mb_name.focus();
return false;
}
/*
var pattern = /([^가-힣\x20])/i;
if (pattern.test(f.mb_name.value)) {
alert("이름은 한글로 입력하십시오.");
f.mb_name.select();
return false;
}
*/
}
<?php if($w == '' && $config['cf_cert_use'] && $config['cf_cert_req']) { ?>
// 본인확인 체크
if(f.cert_no.value=="") {
alert("회원가입을 위해서는 본인확인을 해주셔야 합니다.");
return false;
}
<?php } ?>
// 닉네임 검사
if ((f.w.value == "") || (f.w.value == "u" && f.mb_nick.defaultValue != f.mb_nick.value)) {
var msg = reg_mb_nick_check();
if (msg) {
alert(msg);
f.reg_mb_nick.select();
return false;
}
}
// E-mail 검사
if ((f.w.value == "") || (f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {
var msg = reg_mb_email_check();
if (msg) {
alert(msg);
f.reg_mb_email.select();
return false;
}
}
<?php if (($config['cf_use_hp'] || $config['cf_cert_hp']) && $config['cf_req_hp']) { ?>
// 휴대폰번호 체크
var msg = reg_mb_hp_check();
if (msg) {
alert(msg);
f.reg_mb_hp.select();
return false;
}
<?php } ?>
if (typeof f.mb_icon != "undefined") {
if (f.mb_icon.value) {
if (!f.mb_icon.value.toLowerCase().match(/.(gif|jpe?g|png)$/i)) {
alert("회원아이콘이 이미지 파일이 아닙니다.");
f.mb_icon.focus();
return false;
}
}
}
if (typeof f.mb_img != "undefined") {
if (f.mb_img.value) {
if (!f.mb_img.value.toLowerCase().match(/.(gif|jpe?g|png)$/i)) {
alert("회원이미지가 이미지 파일이 아닙니다.");
f.mb_img.focus();
return false;
}
}
}
if (typeof(f.mb_recommend) != "undefined" && f.mb_recommend.value) {
if (f.mb_id.value == f.mb_recommend.value) {
alert("본인을 추천할 수 없습니다.");
f.mb_recommend.focus();
return false;
}
var msg = reg_mb_recommend_check();
if (msg) {
alert(msg);
f.mb_recommend.select();
return false;
}
}
// CAPTCHA verification
<?php echo chk_captcha_js(); ?>
// Additional CAPTCHA check before form submission
if (f.captcha_no.value.length < 1) {
alert("자동등록방지 코드를 입력하세요.");
f.captcha_no.focus();
return false;
}
// Use AJAX to verify CAPTCHA on the server-side
$.ajax({
url: '<?php echo G5_URL ?>/bbs/captcha_check.php',
type: 'POST',
data: {
captcha_no: f.captcha_no.value,
captcha_key: f.captcha_key.value
},
async: false,
success: function(response) {
if (response.trim() !== 'true') {
alert('자동등록방지 코드가 올바르지 않습니다.');
f.captcha_no.focus();
document.getElementById("btn_submit").disabled = false;
return false;
}
},
error: function() {
alert('CAPTCHA 검증 중 오류가 발생했습니다.');
document.getElementById("btn_submit").disabled = false;
return false;
}
});
document.getElementById("btn_submit").disabled = "disabled";
return true;
}
// Refresh CAPTCHA functionality
function refreshCaptcha() {
$.ajax({
url: '<?php echo G5_URL ?>/bbs/captcha_reload.php',
type: 'GET',
success: function(response) {
$('#captcha_img').attr('src', response);
}
});
}
</script>
클루드 ai로 해결했습니다 ^^
클루드 ai로 해결했습니다 ^^
좋아요0
이 글을 좋아요하셨습니다
등록된 댓글이 없습니다.