R

DB에 저장되는 검색어를 제외시키고 싶을 때 어떻게 해야 하는가요?

· 13년 전 · 1606 · 1
google_search_words.jpg
phpMyAdmin 으로 'g4_popular' 테이블을 보면 위 그림처럼 이상한 깨진 글자와 'j' ,'f' , 'm' , '입니' 등 검색어가 올라옵니다. 그리고 홈페이지 첫 검색어순위에서 2-3일만에 1위에서 10위까지를 모두 차지해서 phpMyAdmin 으로 주기적으로 삭제하여 주는 작업을 하고 있습니다. 검색어를 입력하는 아이피를 추적하여 보니 구글 등 검색회사이던데 아이피를 막아 검색로봇이 못오게 하는 것도 그렇고, 이 문제를 해결하기가 정말 어렵습니다.

예전에 이런 검색어가 데이타베이스에 저장되지 않게 하기 위하여 g4/bbs/search.php 의 내용에 아래와 같은 내용을 추가해 주었는데도 불구하고 걸러지지않고 계속 검색어들이 올라옵니다.

========= g4/bbs/search.php ============================================

~ 앞에 생략 ~

switch ($search_str)
{
case "J" : break;
case "F" : break;
case "j" : break;
case "f" : break;
case "j " : break;
case "f " : break;
case "J " : break;
case "F " : break;
case "m" : break;
case "M" : break;
case "au" : break;
case "bb" : break;
case "be" : break;
default :
// 인기검색어
//$block = "/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/";
$block = "/^[0000-9999]{1,}-[00-12]{1,}-[00-31]{1,}$/";
if (preg_match($block, $stx)) { }
else {
$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);
}
break;
}

~ 이하 생략 ~

==============================================================================


g4/bbs/search.php 말고 다른 것으로 데이타베이스에 저장이 되는지, 혹 다른 프로그램이 있는지, 위 구문에 문제가 없는지, 다른 분들은 어떻게 이런 검색어들을 해결하고 있는지 궁금합니다.

좋은 방법이 있으면 알려주시면 좋겠습니다.

감사합니다.

첨부파일

|

댓글 1개

그냥 search 값이 byte로 1이상 검색 되도록 하는게 좋을듯 합니다.

어차피 한글은 2byte니...
댓글을 작성하시려면 로그인이 필요합니다. 로그인

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
13년 전 조회 1,236
13년 전 조회 3,927
13년 전 조회 1,530
13년 전 조회 2,493
13년 전 조회 1,726
13년 전 조회 1,556
13년 전 조회 1,466
13년 전 조회 1,119
13년 전 조회 1,430
13년 전 조회 1,607
13년 전 조회 1,857
13년 전 조회 1,573
13년 전 조회 1,572
13년 전 조회 1,573
13년 전 조회 1,514
13년 전 조회 1,422
13년 전 조회 1,354
13년 전 조회 3,425
13년 전 조회 1,268
13년 전 조회 1,531
🐛 버그신고