인기검색어 특정단어 db 저장 제외 시키기

인기검색어 특정단어 db 저장 제외 시키기

QA

인기검색어 특정단어 db 저장 제외 시키기

본문

그누보드 4 에서는

아래와 같이 하면 된다는 글을 봤습니다. 응용을 하면 그누보드 5에서도 가능할것같은데

 

여분필드 cf_2에 기록 제외용 필터 언어 cf-2의 db종류를 VARCHAR에서 TEXT로 변경   "기본환경설정"에서 여분필드의 "여분필드 2 설정값"에 필터할 단어를 적습니다.(콤마를 구분자로 사용) 

bbs/search.php에서 검색어 기록부분을 다음과 같이 변경하여줍니다. 
 
//그누보드4 검색어기록 필터 20121221 
$filter = explode(",", $config[cf_2]); 
 if(!in_array($search_str, $filter)) { 
$sql = " insert into $g4[popular_table] set pp_word = '$search_str', pp_date = '$g4[time_ymd]', pp_ip = '$_SERVER[REMOTE_ADDR]' "; 
sql_query($sql, FALSE); 
} 
 

 

 

그누보드 5 seacrh.php 파일 인기검색어 저장 부분 어디쯤에 넣어줘야할지 

 

감이 안잡히네요.. 아래가 그누보드 4 인기검색어 insert 부분인것같은데..

 

 
$str = '(';
for ($i=0; $i<count($s); $i++) {
if (trim($s[$i]) == '') continue;
 
$search_str = $s[$i];
 
// 인기검색어
insert_popular($field, $search_str);
 
$str .= $op1;
$str .= "(";
 
$op2 = '';
// 필드의 수만큼 다중 필드 검색 가능 (필드1+필드2...)
for ($k=0; $k<count($field); $k++) {
$str .= $op2;
switch ($field[$k]) {
case 'mb_id' :
case 'wr_name' :
$str .= "$field[$k] = '$s[$i]'";
break;
case 'wr_subject' :
case 'wr_content' :
if (preg_match("/[a-zA-Z]/", $search_str))
$str .= "INSTR(LOWER({$field[$k]}), LOWER('{$search_str}'))";
else
$str .= "INSTR({$field[$k]}, '{$search_str}')";
break;
default :
$str .= "1=0"; // 항상 거짓
break;
}
$op2 = " or ";
}
$str .= ")";
 
$op1 = " {$sop} ";
 
}

이 질문에 댓글 쓰기 :

답변 1

lib > common.lib.php 파일에서 insert_popular 함수 (2980라인 정도)를 수정하세요.

 


// 인기검색어 입력
function insert_popular($field, $str)
{
    global $g5, $config; // 변경
    $filter = explode(",", $config[cf_2]);  // 추가
    if(!in_array('mb_id', $field) && !in_array($str, $filter)) { // 변경
        $sql = " insert into {$g5['popular_table']} set pp_word = '{$str}', pp_date = '".G5_TIME_YMD."', pp_ip = '{$_SERVER['REMOTE_ADDR']}' ";
        sql_query($sql, FALSE);
    }
}
답변을 작성하시기 전에 로그인 해주세요.
전체 48
QA 내용 검색

회원로그인

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