• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글

우리 홈 게시판 스팸 차단

오작교 24135

1
  1. 앞으로 할 작업 이해

    먼저, 앞으로 할 작업을 간단히 요약해서 보여 드리겠습니다. 아래 제로보드4의 파일 구성 그림을 참조합니다.

    제로보드4에 지엠스팸프리 ZmSpamFree 적용방법 1

    작업의 순서는, 아래와 같습니다.
    ① 지엠스팸프리 설치 및 정상작동 확인 (사용방법 1번 게시물 참조)
    ② 게시물 쓰기에 적용 A , B
    ③ 덧글 쓰기에 적용 A , B
    ④ 회원가입 폼에 적용 A , B

    위 그림을 유심히 보시기 바랍니다. 아래 설명에도 계속 참고할 것입니다.

    특히, 위에서 '해당 스킨 디렉토리'라고 쓰인 부분은, 해당 게시판이 사용중인 스킨의 디렉토리를 말합니다.

    제로보드4에 지엠스팸프리 ZmSpamFree 적용방법 2

    위 그림은 제로보드 관리자 페이지에서 해당 게시판 설정에 들어갔을 때의 화면입니다. 어떤 스킨을 사용하는가에 따라 위 빨간색 박스 안에 제각기 다른 이름이 들어가 있습니다.

    아래 설명중 '해당 스킨 디렉토리'라는 말은, 'nzeo_ver4_bbs' 꼭 디렉토리를 뜻하는 것은 아닙니다. 해당 스킨 디렉토리는 여러분이 직접 찾으셔야 합니다. 또한, 홈페이지에 여러 개의 스킨을 사용하신다면, 모든 스킨에 다 적용하셔야 합니다.

  2. 게시물 쓰기에 적용 A : write.php

    해당 스킨 디렉토리의 write.php 파일을 에디터로 열고, <?=$hide_start?>라고 씌어진 코드를 찾습니다. 이는, 회원 로그인시에는 출력하지 말라는 명령의 코드입니다. 따라서, 위 코드의 아래에 다음과 같은 코드를 넣습니다.

    <?=$hide_start?>
    <tr>
        <td>스팸차단코드</td>
        <td>
        <p><img src="https://해당주소/zmSpamFree/zmSpamFree.php?zsfimg=<?php echo time();?>" id="zsfImg" alt="아래 새로고침을 클릭해 주세요." title="SpamFree.kr" /></p>
        <p><input type="text" size="8" maxlength="10" name="zsfCode" id="zsfCode" /></p>
        <p><a href="#" onclick="document.getElementById('zsfImg').src='https://해당주소/zmSpamFree/zmSpamFree.php?re&zsfimg=' + new Date().getTime(); return false;" title="새로고침">새로고침</a></p>
        </td>
    </tr>

    ※ 위 코드에서 빨간색으로 된 부분은 자신의 서버 주소로 바꿔야 합니다.

    이제 입력폼은 다 수정되었습니다. 검증 페이지 수정은 조금 더 쉽습니다.

  3. 게시물 쓰기에 적용 B : write_ok.php

    먼저, 맨 위의 이미지를 다시 보시고 어디에 위치한 파일인지 확인합니다.

    write_ok.php 파일을 열면 처음부분(약 26번째 줄)에 if(!$member[no]) {라는 코드가 있습니다. 이 코드 바로 아래에 아래와 같은 코드를 삽입합니다.

    if(!$member[no]) {
        // 지엠스팸프리 검사
        include 'zmSpamFree/zmSpamFree.php';
        if ( !zsfCheck( $_POST['zsfCode'], $_GET['id'] ) ) { Error ('스팸차단코드가 틀렸습니다.'); }

  4. 덧글 쓰기에 적용 A : view_write_comment.php

    해당 스킨 디렉토리의 view_write_comment.php 파일을 에디터로 열고, <?=$hide_c_password_start?>라고 씌어진 코드를 찾습니다. 이는, 회원 로그인시에는 출력하지 말라는 명령의 코드입니다. 따라서, 비회원에게만 적용하려면, 위 코드의 아랫부분에, 회원에게도 적용하려면 위 코드 윗부분에 아래와 같은 코드를 입력합니다.

    <?=$hide_c_password_start?>
    <tr>
        <td>스팸차단코드</td>
        <td>
        <p><img src="https://해당주소/zmSpamFree/zmSpamFree.php?zsfimg=<?php echo time();?>" id="zsfImg" alt="아래 새로고침을 클릭해 주세요." title="SpamFree.kr" /></p>
        <p><input type="text" size="8" maxlength="10" name="zsfCode" id="zsfCode" /></p>
        <p><a href="#" onclick="document.getElementById('zsfImg').src='https://해당주소/zmSpamFree/zmSpamFree.php?re&zsfimg=' + new Date().getTime(); return false;" title="새로고침">새로고침</a></p>
        </td>
    </tr>

    ※ 위 코드에서 빨간색으로 된 부분은 자신의 서버 주소로 바꿔야 합니다.

  5. 덧글 쓰기에 적용 B : comment_ok.php

    먼저, 맨 위의 이미지를 다시 보시고 어디에 위치한 파일인지 확인합니다.

    comment_ok.php 파일을 열면 처음부분(약 22번째 줄)에 if(!$member[no]) {이라는 코드가 있습니다. 이 코드 바로 아래에 다음과 같은 코드를 삽입합니다.

    if(!$member[no]) {
    // 지엠스팸프리 검사
        include 'zmSpamFree/zmSpamFree.php';
        if ( !zsfCheck( $_POST['zsfCode'], $_GET['id'] ) ) { Error ('스팸차단코드가 틀렸습니다.'); }

  6. 회원가입에 적용 A : member_join.php

    먼저, 맨 위의 이미지를 다시 보시고 어디에 위치한 파일인지 확인합니다.

    제로보드 디렉토리의 member_join.php 파일을 에디터로 열고, Name 입력폼다음 줄을 찾습니다. 약 223째줄 다음입니다. 이 부분에 아래 코드를 넣습니다.

    <tr>
        <td>스팸차단코드</td>
        <td>
        <p><img src="https://해당주소/zmSpamFree/zmSpamFree.php?zsfimg=<?php echo time();?>" id="zsfImg" alt="아래 새로고침을 클릭해 주세요." title="SpamFree.kr" /></p>
        <p><input type="text" size="8" maxlength="10" name="zsfCode" id="zsfCode" /></p>
        <p><a href="#" onclick="document.getElementById('zsfImg').src='https://해당주소/zmSpamFree/zmSpamFree.php?re&zsfimg=' + new Date().getTime(); return false;" title="새로고침">새로고침</a></p>
        </td>
    </tr>

    ※ 위 코드에서 빨간색으로 된 부분은 자신의 서버 주소로 바꿔야 합니다.

  7. 회원가입에 적용 B : member_join_ok.php

    먼저, 맨 위의 이미지를 다시 보시고 어디에 위치한 파일인지 확인합니다.

    member_join_ok.php 파일을 열면 처음부분(약 10번째 줄)에 // DB 연결이라는 주석이 있습니다. 이 코드 바로 위에 아래와 같은 코드를 삽입합니다.

        include 'zmSpamFree/zmSpamFree.php';
        if ( !zsfCheck( $_POST['zsfCode'] ) ) { Error ('스팸차단코드가 틀렸습니다.'); }
    // DB 연결

  8. 디자인을 마무리 합니다.

    일단, 제대로 돌아가는지 확인하신 후, 스타일이나 CSS를 수정하여 디자인을 마무리합니다.

  9. 주의사항

    맨 위에서 보았던 이미지를 다시 보겠습니다.

    제로보드4에 지엠스팸프리 ZmSpamFree 적용방법 1

    특정 스킨은 write_ok.php 파일이나 comment_ok.php 파일을 제로보드의 자체 파일을 사용하지 않고, 해당 스킨 안에 따로 제작한 프로그램으로 돌리곤 합니다.

    따라서, 이러한 스킨을 사용하실 경우에는, 해당 폴더 안에 있는 write_ok.php 와 comment_ok.php 파일도 수정하셔야 제대로 사용 가능합니다.

  10. 특정 게시판만 적용하는 방법

    아래 코드는, 위 설명중 3번 게시물 쓰기에 적용 B, 5번 덧글 쓰기에 적용 B 에서 수정했던 코드입니다.

    if(!$member[no]) {
        // 지엠스팸프리 검사
        include 'zmSpamFree/zmSpamFree.php';
        if ( !zsfCheck( $_POST['zsfCode'], $_GET['id'] ) ) { Error ('스팸차단코드가 틀렸습니다.'); }

    위 코드에서 아래와 같이 몇 줄만 더 추가하면 됩니다. (빨간색)

    아래 코드 예는, '방명록'(guestbook)만 적용할 경우의 예이므로, guestbook이 아닌 다른 게시판명을 입력하시면 됩니다.

    if(!$member[no]) {
        // 지엠스팸프리 검사
        if ($id=='gueskbook') {
        include 'zmSpamFree/zmSpamFree.php';
        if ( !zsfCheck( $_POST['zsfCode'], $_GET['id'] ) ) { Error ('스팸차단코드가 틀렸습니다.'); }
        }

    맨 아랫부분에 괄호'}' 닫는 것을 잊지 마세요.

    만일, 여러 개의 '방명록(guestbood)'과 '자유게시판(free)' 2개의 게시판에 적용시키고 싶다면, 아래와 같이 합니다.

    if(!$member[no]) {
        // 지엠스팸프리 검사
        if ($id=='gueskbook' OR $id=='free') {
        include 'zmSpamFree/zmSpamFree.php';
        if ( !zsfCheck( $_POST['zsfCode'], $_GET['id'] ) ) { Error ('스팸차단코드가 틀렸습니다.'); }

출처 : https://www.casternet.com/spamfree/zmb/view.php?bd=manual&no=5&page=1

공유
1
안개 2009.09.30. 10:59
역시 오작교님 이십니다
전에 한번 적용해 볼려다가 무엇이 잘못되었는지...마음 먹은되로 잘 되지않아
소스만 뚫어지게 쳐다보다가 보류해뒀는데
오작교님 소스보고 저도 한번 배워봐야 겠습니다
유용한 정보 감사드려요^^

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?

목록

공유

facebooktwitterpinterestbandkakao story
검색어 : 201910
번호 제목 글쓴이 날짜 조회 추천
151
normal
오작교 16.06.27.17:22 17081 0
150
normal
오작교 08.11.25.13:52 25859 0
149
normal
오작교 08.07.24.09:23 53406 0
148
normal
오작교 08.01.11.09:36 22664 0
147
normal
오작교 07.11.13.16:23 23290 0
146
normal
오작교 09.09.24.17:45 25336 0
145
normal
오작교 09.09.14.14:26 17451 0
144
normal
오작교 09.08.30.23:29 20921 0
143
normal
오작교 09.04.29.13:31 29585 0
142
normal
오작교 09.03.10.11:48 21230 0
141
normal
오작교 09.03.10.10:35 21422 0
140
normal
오작교 09.03.10.10:13 18883 0
139
normal
오작교 09.03.10.09:50 19948 0
138
normal
오작교 09.02.27.13:31 21016 0
137
normal
오작교 09.02.27.11:34 19437 0
136
normal
오작교 09.02.27.11:05 19732 0
135
normal
오작교 09.02.26.19:28 21445 0
normal
오작교 09.02.06.16:42 24135 0
133
normal
오작교 08.12.19.16:23 18938 0
132
normal
오작교 08.12.16.11:03 21328 0