혹, 참고가 되실까 해서 퍼온 글 올립니다. 제로 보드에서 게시판 소스를 약간 손보아서 스팸 방지하는 방법입니다. 사실 간단한 방법인데, 정상적으로 글 올리는 사람들이 글 올릴 때 약간의 수고를 하게 만드는 방법이지요. 체크 박스를 하나 체크하게 만들어 놓는 겁니다. 제 개인 홈페이지에 있는 자유 게시판에도 이 방법을 사용하고 있는데 제 기억으로는 지금까지 (제로보드로 바꾼 지 한 1년?) 딱 한번 광고 올라왔던 걸로 기억합니다. 저는 무지하게 효과 좋다고 느끼고 있는데, 혹시 좀 더 잘 아시는 분이 코멘트 해주시면...
www.nzeo.com에서 퍼왔습니다.
광고글 자동등록 피하는 팁
김별 (Homepage) 2003-06-02 14:55:51, 조회 : 2,339, 추천 : 4
네오툴(?)이라는 프로그램 등으로 제로보드에 광고성 글을 올리는 업자들이 많아진듯하여..
글올리는 곳에 다음과 같이 코드 수정을 하였습니다.
일단 수정하여 올려본 결과..
광고글은 한건도 올라오지 않고 있습니다.. ^^
주의하실 점은.. 3번째 write_ok.php 에서의 if문의 특정 게시판 이름을 넣은것은 제 방명록의 경우 write.php를 통해 글쓰는 방식이 아닌듯하여 예외처리한 것입니다.
필요없는 분들은 if문을 생략하시면 되겠네요..
수정할 파일은 제로보드가 설치된 디렉토리에서 파일3개를 수정하면 됩니다.
비회원일 경우에는 동의체크를 해야 글이 등록되며, 회원로그인시 체크하지 않아도 됩니다.
질문사항은 제홈페이지가 빠르겠네요.. ^^
도움이 되길 바라며.. 몇자 끌적거렸습니다.
1. write.php
include $dir."/write.php"; // 이 아래에 코드를 넣습니다.
if(!$member[no]) {echo "<center><br><input type='checkbox' name='spam_check'> 광고성/음란성 글이 아닙니다. 이를 어길시 법적 제제를 받겠습니다.<br><center>";}
2. script/script_write.php
function check_submit()
{ // 이 아래에 코드를 넣습니다.
<? if(!$member[no]) { ?>
if(!document.all('spam_check').checked) { alert('광고/불법 게시가 아님을 동의하셔야 합니다'); return false; }
<? } ?>
3. write_ok.php
/***************************************************************************
* 게시판 설정 체크
**************************************************************************/
// 이 아래에 코드를 넣습니다.
if($id!='ps7_guest') {
if(!$member[no] && $spam_check != 'on') Error("정상적으로 글을 작성하여 주시기 바랍니다.");;
}