인클루드된 상담문의폼에 글을 남기면 자동등록방지 팝업이 뜹니다!
본문
https://sir.kr/g5_skin/25290#c_61031
안녕하세요
조아웹님이 올려주신 상담 폼을 잘 사용하고 있습니다.
최근에 발견한 오류인데요.
비회원으로 상담신청을 하면 자동등록방지 숫자가 틀렸다는 팝업이 뜹니다.
회원이 남기면 잘 남겨집니다.
혹시 해결방안이 있을까요..? 도와주세요 ㅠㅠ
답변 2
CAPTCHA 기능을 유지하되, 비회원 요청이 정상적으로 처리되도록
bbs/write_update.php에서 CAPTCHA 검증 로직을 조건적으로 처리하게 수정하면 어떨까요.
*bbs/write_update.php에서 비회원 요청 시 CAPTCHA 검증을 선택적으로 처리
if ($is_use_captcha && $is_guest && !chk_captcha()) {
alert('자동등록방지 숫자가 틀렸습니다.');
exit;
}
if ($is_use_captcha) {
if ($is_guest && !chk_captcha()) {
alert('자동등록방지 숫자가 틀렸습니다.');
exit;
}
// 추가 검증 로직이 필요한 경우 여기에 작성
}
CAPTCHA 세션과 입력값이 일치하지 않는 이유를 확인하기 위해, 로그를 추가하여 디버깅
if ($is_use_captcha) {
error_log('Session CAPTCHA: ' . $_SESSION['captcha_key']);
error_log('Posted CAPTCHA: ' . $_POST['captcha_key']);
}
*. ./skin/online/write_update.head.skin.php에 아래 코드를 사용
<?php
if (!defined('_GNUBOARD_')) exit;
// CAPTCHA 초기화
$keystring = uniqid();
set_session("ss_captcha_key", $keystring);
?>
해당 폴더에 보시면 write_update.head.skin.php 파일 내 내용을 다 삭제 하고 재 시도 해보세요
답변을 작성하시기 전에 로그인 해주세요.