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