검색어에 금지어 기능 넣을려고 시도해봤는데 코드좀 봐주실수 있나요?

검색어에 금지어 기능 넣을려고 시도해봤는데 코드좀 봐주실수 있나요?

QA

검색어에 금지어 기능 넣을려고 시도해봤는데 코드좀 봐주실수 있나요?

본문

theme/head.php

 

<form name="fsearchbox" id="wr_sirch" method="get" action="<?php echo G5_BBS_URL ?>/search.php" onsubmit="return fsearchbox_submit(this);">
                    <input type="hidden" name="sfl" value="wr_subject||wr_content">
                    <input type="hidden" name="sop" value="and">
                    <label for="sch_stx" class="sound_only">검색어 필수</label>
                    <input type="text" name="stx" id="sch_stx" maxlength="20" placeholder="검색어를 입력해주세요">
                    <button type="submit" id="sch_submit" value="검색"><i class="fa fa-search" aria-hidden="true"></i><span class="sound_only">검색</span></button>
                </form>

                <script>
                        var sirch = "";
                        $.ajax({
                            url: g5_bbs_url + "/ajax.filter.php",
                            type: "POST",
                            data: {
                                "sirch": f.wr_sirch.value,
                            },
                            dataType: "json",
                            async: false,
                            cache: false,
                            success: function(data, textStatus) {
                                sirch = data.sirch;
                            }
                        });

                        if (sirch) {
                            alert("검색어에 금지단어('" + sirch + "')가 포함되어있습니다");
                            f.wr_sirch.focus();
                            return false;
                        }
                    function fsearchbox_submit(f) {
                        if (f.stx.value.length < 2) {
                            alert("검색어는 두글자 이상 입력하십시오.");
                            f.stx.select();
                            f.stx.focus();
                            return false;
                        }

                        // 검색에 많은 부하가 걸리는 경우 이 주석을 제거하세요.
                        var cnt = 0;
                        for (var i = 0; i < f.stx.value.length; i++) {
                            if (f.stx.value.charAt(i) == ' ')
                                cnt++;
                        }

                        if (cnt > 1) {
                            alert("빠른 검색을 위하여 검색어에 공백은 한개만 입력할 수 있습니다.");
                            f.stx.select();
                            f.stx.focus();
                            return false;
                        }

                        return true;

                    }

                </script

 

 

ajax.filter.php

 

<?php
include_once('./_common.php');

$subject = strip_tags($_POST['subject']);
$content = strip_tags($_POST['content']);
$sirch = strip_tas($POST['sirch']);

//$filter = explode(",", strtolower(trim($config['cf_filter'])));
// strtolower 에 의한 한글 변형으로 아래 코드로 대체 (곱슬최씨님이 알려 주셨습니다.)
$filter = explode(",", trim($config['cf_filter']));
for ($i=0; $i<count($filter); $i++) {
    $str = $filter[$i];

    // 제목 필터링 (찾으면 중지)
    $subj = "";
    $pos = stripos($subject, $str);
    if ($pos !== false) {
        $subj = $str;
        break;
    }

    // 내용 필터링 (찾으면 중지)
    $cont = "";
    $pos = stripos($content, $str);
    if ($pos !== false) {
        $cont = $str;
        break;
    }
    // ㄱ머색어 필터링 (찾으면 중지)
    $sir = "";
    $pos = stripos($sirch, $str);
    if($sir !== false) {
        $sir = $str;
        break;
    }
}

die("{\"subject\":\"$subj\",\"content\":\"$cont\"}");
?>

 

 

 

 

이렇게 대충 skin/board/basic/write.skin.php에 있는걸 따라 하면서 해봤는데 역시나 안되네요....

고쳐야 할부분이 있는건가요 아니면 방향부터 잘못잡은건가요?

이 질문에 댓글 쓰기 :

답변 1

data: {
 "sirch": f.wr_sirch.value, --> "sirch": f.stx.value //이렇게 테그네임 벨류로 넘기셔야 합니다.
 },

답변을 작성하시기 전에 로그인 해주세요.
전체 32
QA 내용 검색

회원로그인

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