천객만래 [千客萬來] (It has an interminable succession of visitors)

블로그 PAZ 백트래킹 및 홈페이지 예제



/***************************************************
        만든이: 윤여혁(paz)
        Homepages: http://www.zeroblog.com/
        Email: goodemail@korea.com
****************************************************/


내려받으신 압축 파일에는 블로그 타입의 스킨과 
그 스킨과 어울릴만한 캘린더, 최근 코멘트, RSS 변환 파일을 포함하고 있습니다. 
사용의 실례를 보여드리고자 제 홈의 head.html, foot.html도 함께 포함시켰습니다. 

압축을 풀면 나타나는 폴더와 파일들은 실제 제 홈에서 사용되는 파일들의 위치입니다. 
참고로 제 홈은 노프레임이므로 head.html과 foot.html 그리고 그 사이에 포함되는 블로그 타입의 스킨(paz_blog_100)으로 구성되어 있습니다. 

캘린더나 최근 코멘트 그리고 RSS는 모두 사용하실 필요는 없으며 필요한 것만 include하여 사용하면 됩니다. 



## 파일 구성:
public_html/index.html                : 원래는 대문역할을 하는 것이지만 포워딩 메타 태그를 기입하여 바로 블로그 페이지가 열리도록 했습니다.
public_html/head.html                : head.html 입니다. 
public_html/foot.html                : foot.html이며 메뉴를 담당하고 있습니다. 캘린더와 최신 코멘트를 include하는 예문을 볼 수 있습니다. 
public_html/bbs/style.css                : head.html, foot.html의 style sheet

public_html/bbs/skin/paz_blog_100        : blog type의 스킨

public_html/bbs/paz_comment.php        : 최신 코멘트. 최신 코멘트를 사용하려면 이 파일을 include하면 됩니다. 
public_html/bbs/paz_calendar.css        : 캘린더 style shteet
public_html/bbs/paz_calendar.php        : 캘린더. 캘린더를 사용하려면 이 파일을 include하면 됩니다. 
public_html/bbs/paz_trackback.php        : 최근 트랙백
public_html/bbs/zero2rss.php        : RSS 변환



## 캘린더 사용 
위치: 캘린더 소스는 paz_calendar.php와 paz_calendar.css 이며 bbs 폴더에 있습니다. 
기능: 작성된 글이 있는 날을 표시하며 그 날짜에 마우스를 가져가면 작성된 글의 수를 표시합니다. 그리고 날짜를 클릭하면 해당 일의 글을 보여줍니다. 
참고로 방명록 형식의 글은 바로 본문을 보여주고 일반 게시판 형식은 목록을 보여줍니다. 

설치:
1. paz_calendar.php, paz_calendar.css를 달력을 나타내고자 하는 페이지의 파일과 동일한 폴더에 둠(아래 부연 설명 참조)
2. 캘린더가 표시되길 원하는 곳에 include 문장을 입력 
3. 제로보드 폴더(대개 bbs)에 _head.php를 수정
4. paz_calendar.php 수정
5. paz_calendar.css 수정

1번 부연 설명: 
캘린더를 제로보드 게시판에서 사용한다면 제로보드(대개 bbs이며 lib.php가 존재하는 폴더임) 폴더에 둡니다. 
예를 들면 노프레임에서 head.html과 foot.html은 게시판에 포함되는 것이므로 이들 파일에서 캘린더가 나타나길 원한다면 제로보드 폴더에 둡니다.
저의 경우는 foot.html에 캘린더가 나타나도록 했으므로 제로보드 폴더에 두었습니다. 
하지만 index.html 또는 main.html 같이 게시판이 아닌 경우는 이들과 같은 폴더에 둡니다. 

사용 예)
1. 제로보드 폴더에 paz_calendar.php와 paz_calendar.css를 둠
2. foot.html 을 메모장으로 열고 아래 include 문장을 캘린더가 나타나길 원하는 곳에 삽입

<? include "./paz_calendar.php"; ?>

참고: 인클루드문에서 paz_calendar.php의 경로는 자신의 홈 상황에 맞게 수정하십시요. 위 인클루드 문은 예제일 뿐입니다. 
<? include "/home/finegood/public_html/bbs/paz_calendar.php; ?> 이렇게 할 수도 있겠죠.

3. 제로보드 폴더(대개 bbs)에 _head.php를 열고 아래 코드라인을 찾으세요..대게 161라인에 있습니다. 

// 전체개수를 구함 : 검색어가 있을때는 따로 전체 갯수를 구함, 아니면 게시판에 있는것으로 
if($s_que) {

그리고 아래 코드라인을 그 위에 삽입하세요.. 대개 160 라인정도가 되겠군요..

결국 이렇게 됩니다. 

           // 선택된 날짜로 이동할 때 사용되는 조건문 - 캘린더에서 사용
            if ($go_date) { 
                    $s_que    = " where from_unixtime(reg_date,'%Y%m%d') = $go_date and father = 0"; 
            } 

        // 전체개수를 구함 : 검색어가 있을때는 따로 전체 갯수를 구함, 아니면 게시판에 있는것으로 
        if($s_que) {
        ...

4. paz_calendar.php를 메모장으로 열고 $_zb_url, $id 등을 주석을 참조하여 자신의 홈페이지 조건에 맞도록 수정

5. 자신의 홈 성격에 맞도록 paz_calendar.css를 수정하여 캘린더 색 변경 




## 최근 코멘트 보기 사용
위치: 최근 코멘트 보기 소스는 paz_comment.php이며 bbs 폴더에 있습니다. 
기능: 최근에 기록된 코멘트를 나타내며 마우스를 가져가면 작성자명과 작성 시간이 표시됩니다. 클릭하면 해당 본문으로 이동합니다. 

설치: 위 캘린더와 유사합니다. 
1. paz_comment.php를  최근 코멘트를 나타내고자 하는 페이지의 파일과 동일한 폴더에 둠(위 캘린더의 부연 설명 참조)
2. 최근 코멘트가 표시되길 원하는 곳에 paz_comment.php를 include 하는 문장을 삽입함. <? include "./paz_comment.php"; ?>
3. paz_comment.php을 메모장으로 열고 수정( $board_title는 반드시 자신의 게시판명으로 변경하시기 바랍니다)
4. _head.php 을 수정

위 캘린더처럼 _head.php에 아래 코드를 삽입하면 됩니다. 

            // 선택된 게시물로 이동할 때 사용되는 조건문 - 최근 코멘트에서 사용
            if ($go_no) { 
            $s_que    = " where no = $go_no" ; 
            } 

저의 경우는 위 2개 코드 모두(캘린더용, 최근코멘트용)가 _head.php에 삽입되어 있습니다. 

저의 _head.php 예)

        // 선택된 날짜에 대한 이동시 사용되는 조건문 
        if ($go_date) { 
                $s_que    = " where from_unixtime(reg_date,'%Y%m%d') = $go_date and father =0"; 
        } 

        // 선택된 게시물에 대한 이동시 사용되는 조건문 
        if ($go_no) { 
                $s_que    = " where no = $go_no" ; 
        } 

        // 전체개수를 구함 : 검색어가 있을때는 따로 전체 갯수를 구함, 아니면 게시판에 있는것으로
        if($s_que) {
        // 카테고리만 있을 경우
        ...



참고: 캘린더, 최근코멘트가 DB 접속을 못해서 나타나는 에러를 보인다면 아래 두 라인(DB접속하는 부분)에 주석처리(//)를 해제하시면 됩니다. 
대개 노프레임에 헤더나 푸터에 사용되는 경우는 따로 DB 접속을 할 필요가 없으므로 주석처리된 채로 두면 됩니다. 

//        if(!$connect) $connect=paz_comm_dbconn();
//        mysql_close($connect);



## 카테고리 사용
1. 게시판 설정에서 '카테고리 사용'에 체크
2. paz_category.php를 메모장으로 열고 카테고리를 적용할 게시판 이름을 적습니다.
3. 사용하고 싶은 곳에 아래처럼 인클루드 하면 됩니다. 
<? include "./paz_category.php"; ?>



## 최근 트랙백 사용
최근 코멘트와 설치 방법이 유사합니다. 
<? include "./paz_trackback.php"; ?>



## RSS 변환기
위치: RSS 변환기 소스는 zero2rss.php이며 bbs 폴더에 있습니다. 
기능: 블로그 게시판의 작성된 글을 RSS로 변환

참고: 
RSS(Really Simple Syndication)란 웹에 올린 글이나 뉴스 등을 다른 사람과 공유하기 위해 사용되는 표준 XML 형식을 말합니다. 
따라서 게시판에 작성된 글을 공통된 표준 양식인 RSS로 전환해 두면 RSS를 수집하는 사이트(www.blogkoorea.org)나 프로그램(SharpReader)에 의해 작성된 글이 읽혀지게 되는 겁니다. 

예를 들면 블로그 게시판에 글을 작성하면 글의 제목이 제가 가입한 blogkorea 리스트 페이지에 몇분 내에 나타납니다. 
관심있는 사람들이 그 제목을 클릭하면 제 홈으로 연결되므로 글을 알릴 수가 있게 되는 셈입니다.  

참고로 blogkorea에 가입 할 때 등록 정보에 '블로그 RSS 주소'란에 자신의 RSS 주소를 기입하면 됩니다. 
저의 경우는 http://finegood.posville.co.kr/bbs/zero2rss.php?id=fine_diary 기입했습니다. 


설치 방법은 아래 제작자 양주일님의 글을 참고하세요..

http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=rss&select_arrange=headnum&desc=asc&no=4936


저는 zero2rss.php를 메모장으로 열고 $url, $allowBoard 이 두 부분만 수정해서 사용하고 있습니다. 




## 블로그 타입의 스킨 사용

아래 링크된 페이지를 참조하세요..

http://www.nzeo.com/bbs/zboard.php?id=cgi_zskins2&page=1&sn1=&divpage=2&sn=on&ss=on&sc=off&keyword=paz&select_arrange=headnum&desc=asc&no=12734

별다른 설정이나 수정없이 다른 스킨처럼 압축 풀어서 사용하시면 됩니다.
포스트(글 박스)의 가로 폭과 한 페이지에 보여지는 포스트의 갯수(페이지당 목록 수)는 게시판 설정에서 합니다. 

1. 이미지 파일을 업로드 하고 원하는 곳에 이미지를 위치 시키기 위해서는 게시판 설정에서 자료실 기능을 체크해야 합니다. 

글쓰기에서 이미지 파일(jpg, gif, png)을 업로드하면 상단 중앙에 이미지가 나타납니다. 
특정 위치에 이미지가 나타나기를 원한다면 그곳에 <image1>를 입력하시면 됩니다. 
글과 어울리게 정렬을 하려면 <image1 align=?> 를 입력 하시되 물음표 대신에 이미지 정렬 방식(right 또는 left)을 적으시면 됩니다. 

예) 
IMAGE UP 1을 통해 파일을 올리시고 이미지를 글 왼쪽에 위치 시키고 싶으시면 <image1 align=left> 라고 적으면 됩니다. 
IMAGE UP 2를 통해 파일을 올리시고 오른쪽 정렬을 원한다면 <image2 align=right> 를 입력하시면 됩니다.
이미지만 업로드하면 중앙정렬로 이미지가 나타납니다. 

참고: 관리자가 아닌 사용자는 권한설정에서 HTML 사용권한이 부여되어야 합니다.

2. 보여지는 부분은 스타일시트에 자세한 주석을 보고 수정할 수 있도록 하였습니다.  

예) 포스트(글박스) 제목의 색을 변경하고 싶으시면 style.css를 메모장으로 열어서 
아래처럼 포스트 제목이라는 주석을 찾아 color 부분을 변경하면 됩니다. 

/* 포스트 제목 */
.post_title {font-size:9pt; font-family:굴림,돋움; color:#666666; font-weight:bold; TEXT-decoration: none}


paz_home_트랙백.zip


Posted by SB패밀리

제로보드,PHP 스팸자동등록방지 기능




ZM_Crypt 2.0 특징


 

적용이 쉽다

PHP 프로그램을 몰라도, HTML만 알면 쉽게 적용 가능합니다.
기본적으로 파일 4개에 1줄씩만 넣어주시면 작동합니다. 

게시물 차단 + 덧글(코멘트) 차단

최근에는 덧글스팸도 많이 늘었습니다.
본 프로그램은 게시물 뿐만 아니라 덧글(코멘트)의 자동등록도 차단합니다. 

 

디자인 변경 용이

여러 스킨을 사용해도, 각 스킨마다 원하는 위치에
예쁘게 삽입 가능합니다. 

 

보안코드가 텍스트 아닌 이미지

보안코드가 텍스트가 아닌 이미지로 출력됩니다.
그렇다고, 기존 이미지 파일을 불러오는 것이 아닙니다.
GD 라이브러리를 이용, 자체 폰트함수로 그때마다 숫자 이미지 파일을 뿌려주고
자동 삭제됩니다.
때문에, 기존 텍스트 기반의 보안코드보다 보안성이 강합니다. 
씨앗(Seed)을 바탕으로 한 자체 암호화 함수 내장여러분이 처음에 씨앗(Seed)을 설정할 수 있습니다.
암호화는 그 씨앗을 바탕으로 이루어집니다.
때문에, 더욱 더 안전합니다. 

 

설치방법 

 

환경설정 (zm_crypt.php 수정)

① 13째줄(씨앗) : 반드시 변경, 알파벳+숫자로 이루어진 암호 (외울 필요 없음)
② 14째줄(자릿수) : 보안코드의 자릿수 설정 (기본값:4자리) 
③ 15째줄(보안코드 문자종류) : 숫자+알파벳, 또는 숫자만 설정 가능 (기본값:숫자+알파벳)
④ 스팸광고게시물 차단 필요없는 게시판 id 입력 : 게시판에 따라 차단 필요없는 게시판 이름(id)를 콤마(,)로 구분하여 입력 

업로드제로보드(bbs) 디렉토리 안에 'skin' 디렉토리에 아래 두 파일 업로드.
① zm_crypt.php (zmCrypt 프로그램 파일)
② andale12.gdf (글꼴 파일)
예:
/bbs/ : 제로보드 설치 디렉토리
/bbs/skin/ (특정 스킨 디렉토리가 아님) ☜ 이 디렉토리에 설치
/bbs/skin/snowboard/ : 스노우보드 스킨 디렉토리 

제로보드 파일 수정 (write_ok.php , comment_ok.php)위 두 파일을 열면 5~7째줄에 아래와 같은 코드가 똑같이 들어 있습니다.
include "_head.php";
위 코드의 바로 아랫줄에 아래 코드를 삽입합니다.
include ("./skin/zm_crypt.php" ) ;
저장 후 업로드 하여 덮어씌우시면 됩니다. 

스킨 파일 수정 #1 (write.php)① <?=$hide_start?> 코드 아랫줄에 다음 코드 삽입
<? $zCryptClass='input' ; include ("./skin/zm_crypt.php" ) ; ?>
(위에서 input 는 입력 폼의 스타일 클래스(class)입니다. 이해 안 되시면 패쓰!)

이후, 원하시는 위치에 아래와 같이 넣으시면 됩니다.
<?=$zCrypt_Img?> : 보안코드 이미지
<?=$zCrypt_Form?> : 보안코드 입력폼
(<?=$hide_start?> ~ <?=$hide_start?> 안에 넣어야 로그인한 회원에게는 숨길 수 있습니다.) 
스킨 파일 수정 #2 (view_write_comment.php)① <?=$hide_c_password_start?> 코드 아랫줄에 다음 코드 삽입
<? $zCryptClass='input' ; include ("./skin/zm_crypt.php" ) ; ?>
(위에서 input 는 입력 폼의 스타일 클래스(class)입니다. 이해 안 되시면 패쓰!)

이후, 원하시는 위치에 아래와 같이 넣으시면 됩니다.
<?=$zCrypt_Img?> : 보안코드 이미지
<?=$zCrypt_Form?> : 보안코드 입력폼
(<?=$hide_c_password_start?> ~ <?=$hide_c_password_end?> 안에 넣어야 로그인한 회원에게는 숨길 수 있습니다.) 
설치 완료설치완료되었습니다. 테스트해 보시기 바랍니다.
로그아웃 후 테스트해 보시는 것, 잊지 마세요. 

 

고급 환경설정 

환경설정 (zm_crypt.php 수정)20~17줄에는 고급 환경설정 코드가 있습니다.

보안코드 글자색, 바탕색 등을 변경할 수 있습니다.
주석이 자세히 되어 있으므로 쉽게 변경 가능합니다. 

 

기타 문의사항 및 정보 

이메일 : ZnMee@naver.com (지앤미) 
블로그 : blog.naver.com/ZnMee (知&美 : 앎과 앎다움) 
프로그램 : ZM_Crypt 2.0 (2007.07.18. Released)


※ 2007년 11월 07일 추가 정보

제가 테스트하고 있는 커뮤니티 게시판에 본 ZM_Crypt 2.0을 적용한 이후로
자동 스팸광고 게시물이 어제 처음으로 등록되었습니다.
어떻게 등록했나 보니, 아예 회원가입을 자동으로 하여 로그인 한 후
게시물을 등록하는 방식이더군요.
이에, 회원가입 페이지에도 보안코드를 입력하도록 조치하였습니다.

제로보드 프로그램이 있는 디렉토리에 있는
member_join.php 에 보안코드 입력 폼을,
member_join_ok.php 에 검사 코드를 추가하면 됩니다.

단, 이렇게 했을 경우, 오류가 발생합니다.
zm_crypt.php 파일을 열어 18번째 줄 다음에
if (!$id) {$id=0;}
위와 같이 1줄의 코드를 넣어 주시면 오류가 해결됩니다.

 

※ 2007년 12월 17일 추가 정보

사용하시는 서버에 ZM_CRYPT를 사용 가능한지 체크하는 프로그램을
첨부파일로 올렸습니다.
파일명 : zm_crypt_check-znmee.php
위 파일을 먼저 서버에 올리셔서 테스트를 하신 후
적용하시기 바랍니다.


 

※ 2008년 01월 06일 추가 정보

"씨앗"을 반드시 변경하셔야 합니다.
"씨앗"은 입력되는 보안코드를 암호화하는 기본 바탕이 됩니다.
본 프로그램은 단순히 "5858"이라고 입력해도 "5858"로 전송되지 않고
자체 암호화를 통해 다른 문자열로 전송됩니다.
이 암호화를 할 때, "씨앗"을 이용합니다.

예를 들어,
A 사이트 게시판에서 "5858"을 입력했을 때의 암호화 코드와
B 사이트 게시판에서 "5858"을 입력했을 때의 암호화 코드가 똑같다면
금방 뚫리게 되어 스팸 게시물은 다시 올라오게 됩니다.
(이미 기본값인 ZnMeeSeed는 뚫렸습니다.)

"씨앗"은 각 사이트의 게시판마다 제각기 다른 암호화를 할 수 있도록 만드는
기본 바탕입니다.
아직 변경하지 않고 사용하시는 분들은 꼭 바꿔 주시기 바랍니다.
외울 필요도 없습니다.
영문과 숫자의 조합으로 되도록 의미없는 글자들의 조합으로 바꿔 주세요.



zm_crypt_2[1].0_znmee.zip


Posted by SB패밀리