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

리스트페이지 ajax 글쓰기 질문드려요. 채택완료

집에가고싶어 3년 전 조회 1,906

리스트페이지에서 이미지 누르면 다른 게시판에 ajax 로 글 쓰기를 만들고 있습니다.

 

비회원도 글 작성할 수 있도록 처리중인데 계속 캡차에서 오류가 나고 있습니다..

 

https://sir.kr/g5_tip/13517 이 글 참고해서 만들고 있으며 아래는 내용 입니다.

 

</p>

<p><div class="contact_from" id="contact_from"></p>

<p>    <div class="form" id="bo_w"></p>

<p>        <form name="fwrite" id="fwrite" method="post" onsubmit="return fwrite_submit(this);"></p>

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

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

<p>            <input type="hidden" name="bo_table" value="contact" id="bo_table"></p>

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

<p> </p>

<p>            <div id="formWr"></p>

<p>                <!-- <div class="bo_w_ico write_div"></p>

<p>                    <label for="ca_name"  class="lb_icon"><i class="fa fa-check"></i> <span class="sound_only"> 분류<strong>필수</strong></span></label></p>

<p>                    <select name="ca_name" id="ca_name" required class="frm_input full_input required"></p>

<p>                        <option value="">분류를 선택하세요</option></p>

<p>                       </p>

<p>                    </select></p>

<p>                </div> --></p>

<p> </p>

<p>                <div class="bo_w_ico write_div"></p>

<p>                    <label for="wr_2" class="lb_icon"><i class="fa fa-building-o"></i> <span</p>

<p>                            class="sound_only">회사명<strong>필수</strong></span></label></p>

<p>                    <input type="text" name="wr_2" value="" id="wr_2" required class="frm_input full_input required"</p>

<p>                        placeholder="회사명"></p>

<p>                </div></p>

<p> </p>

<p>                <div class="bo_w_ico write_div"></p>

<p>                    <label for="wr_name" class="lb_icon"><i class="fa fa-tag"></i> <span</p>

<p>                            class="sound_only">이름<strong>필수</strong></span></label></p>

<p>                    <input type="text" name="wr_name" value="" id="wr_name" required</p>

<p>                        class="frm_input full_input required" placeholder="이름"></p>

<p>                </div></p>

<p> </p>

<p>                <div class="formCol2wr"></p>

<p>                    <div class="bo_w_ico write_div"></p>

<p>                        <label for="wr_email" class="lb_icon"><i class="fa fa-envelope-o"></i> <span</p>

<p>                                class="sound_only">이메일</span></label></p>

<p>                        <input type="text" name="wr_email" value="" <?php echo $password_required ?> id="wr_email"</p>

<p>                            class="<?php echo $password_required ?> frm_input full_input email " placeholder="이메일"></p>

<p>                    </div></p>

<p> </p>

<p>                    <div class="bo_w_ico write_div"></p>

<p>                        <label for="wr_1" class="lb_icon"><i class="fa fa-phone"></i> <span</p>

<p>                                class="sound_only">연락처</span></label></p>

<p>                        <input type="text" name="wr_1" value="" id="wr_1" <?php echo $password_required ?></p>

<p>                            class="<?php echo $password_required ?> frm_input full_input" size="50" placeholder="연락처"></p>

<p>                    </div></p>

<p>                </div></p>

<p> </p>

<p>                <div class="bo_w_ico bo_w_tit write_div"></p>

<p>                    <label for="wr_subject" class="lb_icon"><i class="fa fa-file"></i> <span class="sound_only"></p>

<p>                            제목<strong>필수</strong></span></label></p>

<p>                    <input type="text" name="wr_subject" value="" id="wr_subject" required</p>

<p>                        class="frm_input full_input required" size="50" maxlength="255" placeholder="제목"></p>

<p>                </div></p>

<p> </p>

<p>                <div class="write_div"></p>

<p>                    <label for="wr_content" class="sound_only">내용<strong>필수</strong></label></p>

<p>                    <div class="wr_content"></p>

<p>                        <textarea id="wr_content" name="wr_content" class="" maxlength="65536" style="width:100%;height:300px" placeholder="내용을 입력해 주세요."></textarea></p>

<p>                    </div></p>

<p>                </div></p>

<p> </p>

<p>                <div class="write_div_privacy"></p>

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

<p>                </div></p>

<p> </p>

<p><?</p>

<p>$keystring = uniqid();</p>

<p>set_session("ss_captcha_count", 0);</p>

<p>set_session("ss_captcha_key", $keystring);</p>

<p> </p>

<p>$captcha_key = $_POST['captcha_key'] = get_session('ss_captcha_key');</p>

<p>?></p>

<p> </p>

<p>                <!-- <div class="write_div"></p>

<p>                    <?php echo $captcha_html; ?></p>

<p>                </div> --></p>

<p> </p>

<p>                <div class="btn_confirm write_div"></p>

<p>                    <input type="submit" value="작성완료" id="btn_submit" accesskey="s" class="btn_submit btn"></p>

<p>                </div></p>

<p>            </div></p>

<p>        </form></p>

<p>    </div></p>

<p></div></p>

<p> </p>

<p><script></p>

<p>    function fwrite_submit(f) {</p>

<p>        $.ajax({</p>

<p>            url: g5_bbs_url+"/write_update.php",</p>

<p>            type: "POST",</p>

<p>            data: {</p>

<p>                "ajax_write": 'y',</p>

<p>                "token": fwrite.token.value,</p>

<p>                "uid": fwrite.uid.value,</p>

<p>                "w": fwrite.w.value,</p>

<p>                "bo_table": fwrite.bo_table.value,</p>

<p>                "wr_id": fwrite.wr_id.value,</p>

<p>                "wr_subject": fwrite.wr_subject.value,</p>

<p>                "wr_name": fwrite.wr_name.value,</p>

<p>                "wr_content": fwrite.wr_content.value</p>

<p>            },</p>

<p>            dataType: "text",</p>

<p>            error: function(xhr, status, error){</p>

<p>                alert(error);</p>

<p>            },</p>

<p>            async: false,</p>

<p>            cache: false,</p>

<p>            success : function(data){</p>

<p>                console.log(data);</p>

<p>                if(data=='success'){</p>

<p>                    alert('등록되었습니다.');</p>

<p>                }else{</p>

<p>                    alert('실패');</p>

<p>                    return false;</p>

<p>                }</p>

<p>                $("#fwrite")[0].reset();</p>

<p>            }</p>

<p> </p>

<p>        });</p>

<p>    }</p>

<p></script></p>

<p>

 

캡차를 사용하든 안하든 계속 자동입력방지 코드가 틀리다고 나오네요..

 

감사합니다.

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

답변 1개

핑크빈
3년 전
/bbs/write_update.php

에서 자동입력방지 코드를 삭제하세요.

if ($is_use_captcha && !chk_captcha()) {

    alert('자동등록방지 숫자가 틀렸습니다.');

}

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

답변에 대한 댓글 1개

집에가고싶어
3년 전
다른방법으로 해결했습니다.

다른 페이지에서는 자동입력방지 코드를 사용해야 하기에 ajax_write 파일을 따로 만들어서 관리하도록 처리했습니다.

ajax 로 처리하려고 하니 입력된 captcha_key 값을 같이 넘겨줘야 하는데 그 부분을 안넘겨줬네요.

답변 감사합니다.

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

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

로그인