skip menu and go to main content

body start

JSBoard

Wiki

Project News

Project Info

activity viewforum,download view

Developer Info



1 최신 글 리스트 보기 구성


JSBoard 의 최신글 목록을 출력하는 기능이다. 이 기능은 include/prelist.php에 의해 구동이 되며 어느 파일에나 삽입을 하여 사용을 할수가 있다.(단 php가 구동될수 있는 파일이어야 한다)

2 최신 글 리스트 보기 설정


일단 먼저 jsboard/include/prelist.php에서 $prlist['path']$prlist['wpath'] 변수값을 설정을 해야 한다. $prlist['path']JSBoard 가 설치 되어 있는 절대 경로를 적어 주며, $prlist['wpath']JSBoard 가 출력되는 웹경로를 적어줘야 한다. 주의 할것은 마지막에 / 는 적지 않도록 한다.

$prlist['path']  = "/home/httpd/html/PHP/jsboard";
$prlist['wpath'] = "http://domain.com/PHP/jsboard";

일단 사용방법을 설명하자면 우선 최신글을 보여줄 page 의 <body> tag 바로 아래에 다음과 같은 코드를 삽입한다. (중요한 것은 이 기능을 적용시킬 file 은 php 가 구동이 될 수 있는 file 이어야 한다. 확장자가 .php3 에서만 php 를 인식할 수 있을 경우에는 .php3 file 에서만 이 기능을 사용할수 있다. 그리고 prelist.php 를 불러들이는 위치는 꼭 <body> 와 </body> 태그 사이어야 한다는 것이 아주 중요하다.)

<? include "절대경로/prelist.php"?>

다음 리스트 출력을 원하는 부분에 다음과 같은 함수를 적어 주도록 한다.

<? prelist("a","b","c"); ?> 

prelist() 함수의 값들에 대해서는 아래를 참고하라.

a 테이블 이름(게시판 이름)
b 글 리스트 수
c 출력글자수

만약 여러개의 게시판을 한 페이지에서 출력하고 싶다면 위의 코드의 값만 적당히 변경 시켜서 여러번 적어 주면 된다.

test 게시판 3개 미리보기<br>
<? prelist("test",3,30); ?>

<p>
test1 게시판 5개 미리보기<br>
<? prelist("test1",5,30); ?>

일단, 위와 같이 출력을 하면 현재로서는 아무런 디자인없이 제목만 한 줄씩 출력하게 된다. 원하는 디자인을 구성하고 싶다면 prlist() 함수를 호출하기 전에 $prlistTemplate 라는 변수에 원하는 디자인을 정의하면 된다.

간단하게 예를 들어 보도록 하겠다.

<table>
<?
$prlistTemplate 
"<tr>\n".
                  
"<td>P_SUBJECT_</td>\n".
                  
"<td>P_LNAME_</td>\n".
                  
"<td>P_DATE_</td>\n".
                  
"<td>P_REFER_</td>\n".
                  
"</tr>\n";
prelist(......)
?>
</table>

prlist 에서 출력을 할 수 있는 원형은 다음과 같다.

P_SUBJECT_ 제목을 치환
P_NAME_ 이름을 치환
P_EMAIL_ 이메일을 치환
P_DATE_ 글 등록시간을 치환
P_REFER_ 조회수를 치환
P_LNAME_ 이메일이 있을 경우 이메일 링크가 된 이름을 치환

만약 제목 링크에 target 이나 onClick 같은 것을 넣고 싶다면 $prlistTemplate 변수 앞에 $prlistOpt 변수를 아래와 같이 지정해 주면 된다.

$prlistOpt = "target=_blnak";
또는
$prlistOpt = "onClick(...)";

간혹, prlist 함수 호출시 <ul> 등의 list tag 로 감쌀 경우 include 되는 javascript 때문에 html validation 에러 에러가 발생할 수 있다. 이 경우에는

$prlist['starttag'] = "<li style=\"list-style: none;\">\n";
$prlist['endtag']   = "</li>";

를 지정하여 처리를 할 수 있다.