테스트 사이트 - 개발 중인 베타 버전입니다

폼메일 자동등록방지 캡챠 삭제 방법 조언요청 채택완료

myfree 2년 전 조회 2,852

폼메일 게시판 (v1.1.1) 업데이트 

-제작자 : 똥싼너구리 / -링크 https://sir.kr/g5_skin/45879

 

아래 폼메일 스킨 다운받아 적용했고,

[그누스터디] "자동등록방지 캡차(CAPTCHA) 코드 삭제 - 그누보드 5.3 버전 이상"

그누스터디 링크 https://gnustudy.com/bbs/board.php?bo_table=gnu_tip&wr_id=184

 

해당 가이드에 따라

1. 게시판 글쓰기에서 삭제 //bbs폴더 write_update.php 포함

2. 게시판 댓글쓰기에서 삭제 //bbs폴더 write_comment_update.php 포함

 

완료 했습니다.

 

그런데도, 여전히 글쓰기 시도 했을때 '자동등록방지 숫자가 틀렸습니다.' 라는 알림이 나오는데요.

해당 스킨의 write.skin.php 에서 추가로 삭제해야 할게 있을까요? 

 

 

폼메일 write_skin.php 소스코드 (원본 올립니다)

 

★★ 아래 두가지 삭제 했습니다만 안되네요. ★★

</p>

<p><?php if ($is_use_captcha) { //자동등록방지  ?>

<div class="form-group">

<label for="">자동등록
방지</label>

<div><?php echo $captcha_html?></div>

 </div>

<?php } ?></p>

<p> </p>

<p>// 캡챠 사용시 자바스크립트에서 입력된 캡챠를 검사함

<?php echo $captcha_js?></p>

<p>

 

★★★ 원본 소스코드 29번째줄 이것을 false로 변경해도 ..안됨. 

</p>

<p>// 캡챠 무조건 사용하도록 하기

$is_use_captcha = true;

$captcha_html = captcha_html();

$captcha_js   = chk_captcha_js();</p>

<p>

 

 

 

★★★ 원본 소스코드

</p>

<p><?php if (!defined('_GNUBOARD_')) exit;</p>

<p>add_stylesheet('<link rel="stylesheet" href="'.$board_skin_url.'/style.css">', 0);</p>

<p>// 제목 자동생성

$subject = date("Y-m-d H:i:s")." 문의";</p>

<p>// 문의분류 재생성 [공지]제거

$is_category = false;

if ($board['bo_use_category']) {

    $category_list = explode('|',$board['bo_category_list']);

    $is_category = true;

}</p>

<p>// 개인정보 처리방침 HTML 처리

$cfg = [];

for($idx=1; $idx<=10; $idx++) {

    $key = 'bo_'.$idx.'_subj';

    if($board[$key]) $cfg[$board[$key]] = $board['bo_'.$idx];

}

$privacy_html = '';

if($cfg['개인정보처리방침']) {

    $privacy_html = file_get_contents($board_skin_path . '/privacy.html');

    foreach (explode('|',$cfg['개인정보처리방침']) as $idx=>$v) {

        $privacy_html = str_replace("{{{$idx}}}", $v, $privacy_html);

    }

}</p>

<p>// 캡챠 무조건 사용하도록 하기

$is_use_captcha = true;

$captcha_html = captcha_html();

$captcha_js   = chk_captcha_js();</p>

<p>/*

$name = '홍길동';

$email = 'sample@sample.com';

$wr_1 = '개발팀';

$wr_2 = '팀장';

$wr_content = '안녕하세요';

//*/

?>

<form name="fwrite" id="fwrite" action="<?php echo $action_url ?>"

      onsubmit="return fwrite_submit(this);"

      method="post" enctype="multipart/form-data" autocomplete="off">

    <input type="hidden" name="uid" value="<?php echo get_uniqid(); ?>">

    <input type="hidden" name="w" value="<?php echo $w ?>">

    <input type="hidden" name="bo_table" value="<?php echo $bo_table ?>">

    <input type="hidden" name="wr_id" value="<?php echo $wr_id ?>">

    <input type="hidden" name="sca" value="<?php echo $sca ?>">

    <input type="hidden" name="sfl" value="<?php echo $sfl ?>">

    <input type="hidden" name="stx" value="<?php echo $stx ?>">

    <input type="hidden" name="spt" value="<?php echo $spt ?>">

    <input type="hidden" name="sst" value="<?php echo $sst ?>">

    <input type="hidden" name="sod" value="<?php echo $sod ?>">

    <input type="hidden" name="page" value="<?php echo $page ?>">

    <input type="hidden" name="wr_subject" value="<?php echo $subject ?>"></p>

<p>    <!--

    폼메일 입력 구조를 정의합니다.

    입력받을 데이터를 name|항목이름 순으로 입력합니다.

    -->

    <input type="hidden" name="contents_info[]" value="wr_name|성함">

    <input type="hidden" name="contents_info[]" value="wr_email|이메일">

    <input type="hidden" name="contents_info[]" value="wr_1|연락처">

    <input type="hidden" name="contents_info[]" value="wr_2|직책">

    <input type="hidden" name="contents_info[]" value="ca_name|문의종류">

    <input type="hidden" name="contents_info[]" value="wr_content|문의내용"></p>

<p>    <section id="formmail-write">

        <?php if($is_admin) {?>

        <a href="<?php echo get_pretty_url($bo_table)?>" class="check-list">문의내역 확인</a>

        <?php }?>

        <div class="form-body"></p>

<p>            <div class="form-group col4">

                <label for="wr_name">성함</label>

                <div>

                    <input type="text" name="wr_name" value="<?php echo $member['mb_name']?>" id="wr_name" required class="form-control required" size="8" maxlength="20">

                </div>

                <label for="wr_email">이메일</label>

                <div>

                    <input type="text" name="wr_email" value="<?php echo $member['mb_email']?>" id="wr_email" class="form-control email required" size="50" maxlength="100">

                </div>

            </div></p>

<p>            <div class="form-group col4">

                <label for="wr_1">연락처</label>

                <div>

                    <input type="text" name="wr_1" value="<?php echo $wr_1 ?>" id="wr_1" required class="form-control" size="10" maxlength="20">

                </div>

                <label for="wr_2">직책</label>

                <div>

                    <input type="text" name="wr_2" value="<?php echo $wr_2 ?>" id="wr_2" required class="form-control" size="10" maxlength="20">

                </div>

            </div></p>

<p>            <?php if ($is_category) { ?>

                <div class="form-group">

                    <label for="ca_name">문의종류</label>

                    <div>

                        <select name="ca_name" id="ca_name" required class="form-control required">

                            <option value="">선택하세요</option>

                            <?php foreach($category_list as $v) {?>

                                <option value="<?php echo $v?>"><?php echo $v?></option>

                            <?php }?>

                        </select>

                    </div>

                </div>

            <?php } ?></p>

<p>            <div class="form-group">

                <label for="wr_content">문의내용</label>

                <div>

                    <textarea id="wr_content" name="wr_content" class="form-control" maxlength="65536" cols="10000" rows="10"><?php echo $wr_content?></textarea>

                </div>

            </div></p>

<p>            <?php for ($i = 0; $is_file && $i < $file_count; $i++) { ?>

                <div class="form-group">

                    <label for="">파일 #<?php echo $i + 1 ?></label>

                    <div>

                        <input type="file" name="bf_file[]" title="파일첨부 <?php echo $i + 1 ?> : 용량 <?php echo $upload_max_filesize ?> 이하만 업로드 가능" class="form-control-file">

                        <?php if ($is_file_content) { ?>

                            <input type="text" name="bf_content[]" value="<?php echo ($w == 'u') ? $file[$i]['bf_content'] : ''; ?>" title="파일 설명을 입력해주세요." class="form-control" size="50">

                        <?php } ?>

                        <?php if ($w == 'u' && $file[$i]['file']) { ?>

                            <input type="checkbox" id="bf_file_del<?php echo $i ?>" name="bf_file_del[<?php echo $i; ?>]" value="1"> <label for="bf_file_del<?php echo $i ?>"><?php echo $file[$i]['source'] . '(' . $file[$i]['size'] . ')'; ?> 파일 삭제</label>

                        <?php } ?>

                    </div>

                </div>

            <?php } ?></p>

<p>            <?php if ($is_use_captcha) { //자동등록방지  ?>

            <div class="form-group">

                <label for="">자동등록
방지</label>

                <div><?php echo $captcha_html?></div>

            </div>

            <?php } ?>

        </div></p>

<p>        <div class="privacy-of-use">

            <?php echo $privacy_html?>

        </div>

        <div class="privacy-of-use-check">

            <label><input type="checkbox" class="required" required/> 개인정보 처리방침에 동의합니다.</label>

        </div></p>

<p>        <div class="form-footer">

            <button type="submit" id="btn_submit" class="btn_submit btn btn-primary"><i class="fa fa-paper-plane" aria-hidden="true"></i> 문의하기</button>

        </div></p>

<p>    </section>

</form></p>

<p><script type="text/javascript">

    function fwrite_submit(f) {

        let subject = "";

        let content = "";

        $.ajax({

            url: g5_bbs_url + "/ajax.filter.php",

            type: "POST",

            data: {

                "subject": f.wr_subject.value,

                "content": f.wr_content.value

            },

            dataType: "json",

            async: false,

            cache: false,

            success: function(data, textStatus) {

                subject = data.subject;

                content = data.content;

            }

        });</p>

<p>        if (subject) {

            alert("제목에 금지단어('" + subject + "')가 포함되어있습니다");

            f.wr_subject.focus();

            return false;

        }</p>

<p>        if (content) {

            alert("내용에 금지단어('" + content + "')가 포함되어있습니다");

            if (typeof(ed_wr_content) != "undefined")

                ed_wr_content.returnFalse();

            else

                f.wr_content.focus();

            return false;

        }</p>

<p>        // 캡챠 사용시 자바스크립트에서 입력된 캡챠를 검사함

        <?php echo $captcha_js?></p>

<p>        document.getElementById("btn_submit").disabled = "disabled";</p>

<p>        return true;

    }

</script>

 </p>

<p>

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
플라이
2년 전

/bbs/write_update.php

 

이곳에서도 캡챠 체크하는부분을 삭제나 주석처리 해주셔야 합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

m
myfree
2년 전
네 거기도 했습니다 ㅜㅜ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인