기타 금지 검색어 사용시 IP 차단
본문
첨부파일 1 : UTF-8 버전용
첨부파일 2 : EUC-KR 버전용
요새 들어 검색어에 욕이니 저질스런 말로 검색을 하시는 분들이 자주 늘어났습니다.
그래서 만들어봤습니다.
금지 검색어 사용시 IP 차단을 하는 스킨입니다.
(스킨이라고 하긴 머하네요.)
사용방법
1. config.php 파일에
$g4['search_table'] = $g4['table_prefix'] . "search"; // 금지검색어 테이블
추가합니다.
2. bbs/search.php 파일 10 번째 줄에
(include_once("./_head.php"); 밑에 줄이겠죠)
// 검색어 필더링 시작
if ($stx) {
$row7 = sql_fetch(" select *, count(*) as cnt from $g4[config_table] where cf_6 like '%$stx%' group by cf_6 order by cnt desc ");
if ($row7[cnt])
{
sql_query(" insert into $g4[search_table] ( mb_id, sc_word, sc_date, sc_ip ) values ( '$member[mb_id]', '$stx', '$g4[time_ymd]', '$_SERVER[REMOTE_ADDR]' ) ");
$row8 = sql_fetch(" select *, count(*) as cnt from $g4[search_table] where sc_ip = '$_SERVER[REMOTE_ADDR]' group by sc_ip order by cnt desc ");
if ($row7[cf_6_subj] <= $row8[cnt])
{
$intercept_ip = "\n".$_SERVER[REMOTE_ADDR];
sql_query(" update $g4[config_table] set cf_intercept_ip = '$row7[cf_intercept_ip]$intercept_ip' ");
}
alert('금지 검색어 ('.$stx.')를 사용하셨습니다.\n\n'.$_SERVER[REMOTE_ADDR].' 에서 '.$row8[cnt].' 회 검색.\n\n경고 : '.$row7[cf_6_subj].' 회 검색시 접근차단됩니다.'); return false;
}
}
추가합니다.
3. 다운받으신 adm/upgrade_search.php 에 복사하신후 실행합니다.
(실행방법:관리자 로그인후 htpp://주소/그누보드/adm/upgrade_search.php)
4. 금지 검색어 및 금지 검색어 허용 횟수 입력
관리자모드 기본환경설정 가셔서 여분 필드 6 제목 부분에
금지 검색어 허용 횟수를 적어주시고
여분 필드 6 설정값 에는 금지어를 , 를 이용해서 적어줍니다.
(이해가 안가시면 첨부 이미지 참조)
PS. 추천좀 팍팍 해주시고요.
금지 검색어가 많을시
DB에 여분 필드 6 설정값 이부분이 varchar(255) 로 세팅되어있으니 text 로 바꾸시면
많이 등록하실수 있습니다.
바꾸는 방법은 저도 잘 몰르니 검색을 추천합니다.
첨부파일 2 : EUC-KR 버전용
요새 들어 검색어에 욕이니 저질스런 말로 검색을 하시는 분들이 자주 늘어났습니다.
그래서 만들어봤습니다.
금지 검색어 사용시 IP 차단을 하는 스킨입니다.
(스킨이라고 하긴 머하네요.)
사용방법
1. config.php 파일에
$g4['search_table'] = $g4['table_prefix'] . "search"; // 금지검색어 테이블
추가합니다.
2. bbs/search.php 파일 10 번째 줄에
(include_once("./_head.php"); 밑에 줄이겠죠)
// 검색어 필더링 시작
if ($stx) {
$row7 = sql_fetch(" select *, count(*) as cnt from $g4[config_table] where cf_6 like '%$stx%' group by cf_6 order by cnt desc ");
if ($row7[cnt])
{
sql_query(" insert into $g4[search_table] ( mb_id, sc_word, sc_date, sc_ip ) values ( '$member[mb_id]', '$stx', '$g4[time_ymd]', '$_SERVER[REMOTE_ADDR]' ) ");
$row8 = sql_fetch(" select *, count(*) as cnt from $g4[search_table] where sc_ip = '$_SERVER[REMOTE_ADDR]' group by sc_ip order by cnt desc ");
if ($row7[cf_6_subj] <= $row8[cnt])
{
$intercept_ip = "\n".$_SERVER[REMOTE_ADDR];
sql_query(" update $g4[config_table] set cf_intercept_ip = '$row7[cf_intercept_ip]$intercept_ip' ");
}
alert('금지 검색어 ('.$stx.')를 사용하셨습니다.\n\n'.$_SERVER[REMOTE_ADDR].' 에서 '.$row8[cnt].' 회 검색.\n\n경고 : '.$row7[cf_6_subj].' 회 검색시 접근차단됩니다.'); return false;
}
}
추가합니다.
3. 다운받으신 adm/upgrade_search.php 에 복사하신후 실행합니다.
(실행방법:관리자 로그인후 htpp://주소/그누보드/adm/upgrade_search.php)
4. 금지 검색어 및 금지 검색어 허용 횟수 입력
관리자모드 기본환경설정 가셔서 여분 필드 6 제목 부분에
금지 검색어 허용 횟수를 적어주시고
여분 필드 6 설정값 에는 금지어를 , 를 이용해서 적어줍니다.
(이해가 안가시면 첨부 이미지 참조)
PS. 추천좀 팍팍 해주시고요.
금지 검색어가 많을시
DB에 여분 필드 6 설정값 이부분이 varchar(255) 로 세팅되어있으니 text 로 바꾸시면
많이 등록하실수 있습니다.
바꾸는 방법은 저도 잘 몰르니 검색을 추천합니다.
추천1
첨부파일
- upgrade_search.php (678byte) 6회 다운로드 | DATE : 2008-03-04 01:52:11
- upgrade_search.php (648byte) 4회 다운로드 | DATE : 2008-03-04 01:52:11
쎄엠님의 댓글
쎄엠쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 작성일아 지혜로운 방법 같습니다. 감사합니다.