웹마스터 팁
page_full_width">
여러 DB에서 최근 게시물 추출하기 위한 소스 입니다.
2004.02.21 00:15
필요해서 대충 많들어 봤습니다. 마니 허접하네요 = _ =;;
조금 수정하시면. 제로보드에도 사용하실수 있겠죠.
http://minolove.net
<?php
/* dimension 을 기준으로 이차원 배열 정열하는 함수*/
function dArray_sort($arr, $dimension) {
if($dimension !== 0) {
for($i = 0; $i < sizeof($arr); $i++) array_unshift($arr[$i], $arr[$i][$dimension]);
rsort($arr);
for($i = 0; $i < sizeof($arr); $i++) array_shift($arr[$i]);
} else rsort($arr);
return $arr;
}
/* 다중 DB에서 최근 게시물 추출 함수 */
function main_limit($board_db,$su,$board_name){
global $connect;
$board_db=explode("|",$board_db); //디비를 잘라서 배열로 만듬
$no=0;
for($i=0;$i<count($board_db);$i++){ //여러디비의 데이터를 추출하기위한 반복문
$query = "select * from ".$board_db[$i]." order by num DESC Limit $su"; //쿼리문
$result = mysql_query($query,$connect);
while($row = mysql_fetch_array($result)){
$list[$no] = array( //게시물을 배열로 만듬
"subject"=>$row[subject],
"reg_date"=>$row[reg_time],
"user_id"=>$row[user_id],
"board_db"=>$board_db[$i],
"num"=>$row[num]
);
$no++;
}
}
$list = dArray_sort($list,"reg_date");//날짜를 기준으로 정렬
/* 출력부분 */
echo "
<table width=100% class=borderTD2>
<td height=20 valign=bottom>
<table class=borderTD width=100%>
<td>최근 <span class=empasistext>$board_name</span>게시물
</td></table>
</td><tr>
<td height=1 class=LightTD></td><tr>
<td>
<table width=100%>
<td width=50 class=darkTD>글쓴이</td><td width=60% class=darkTD>제목</td><td width=50 class=darkTD>등록날짜</td><tr>";
for($i=0;$i<$su;$i++){
echo "<td height=18 valign=bottom>".$list[$i][user_id]."</td><td>
".htmlspecialchars(stripslashes($list[$i][subject]))."</td><td>".date('Y년m월d일',$list[$i][reg_date])."</td><tr>
<td colspan=4 width=100% class=LightTD></td><tr>
";
}
echo "
</table>
</table>";
}
/* 함수 사용 예 */
main_limit("mino_board_tip|mino_board_php_study|mino_html",10,"웹디자인")
//main_limit( DB이름. DB구분을 | 를 이용한다. , 출력될 게시물수 , 게시판 이름 )
?>
조금 수정하시면. 제로보드에도 사용하실수 있겠죠.
http://minolove.net
<?php
/* dimension 을 기준으로 이차원 배열 정열하는 함수*/
function dArray_sort($arr, $dimension) {
if($dimension !== 0) {
for($i = 0; $i < sizeof($arr); $i++) array_unshift($arr[$i], $arr[$i][$dimension]);
rsort($arr);
for($i = 0; $i < sizeof($arr); $i++) array_shift($arr[$i]);
} else rsort($arr);
return $arr;
}
/* 다중 DB에서 최근 게시물 추출 함수 */
function main_limit($board_db,$su,$board_name){
global $connect;
$board_db=explode("|",$board_db); //디비를 잘라서 배열로 만듬
$no=0;
for($i=0;$i<count($board_db);$i++){ //여러디비의 데이터를 추출하기위한 반복문
$query = "select * from ".$board_db[$i]." order by num DESC Limit $su"; //쿼리문
$result = mysql_query($query,$connect);
while($row = mysql_fetch_array($result)){
$list[$no] = array( //게시물을 배열로 만듬
"subject"=>$row[subject],
"reg_date"=>$row[reg_time],
"user_id"=>$row[user_id],
"board_db"=>$board_db[$i],
"num"=>$row[num]
);
$no++;
}
}
$list = dArray_sort($list,"reg_date");//날짜를 기준으로 정렬
/* 출력부분 */
echo "
<table width=100% class=borderTD2>
<td height=20 valign=bottom>
<table class=borderTD width=100%>
<td>최근 <span class=empasistext>$board_name</span>게시물
</td></table>
</td><tr>
<td height=1 class=LightTD></td><tr>
<td>
<table width=100%>
<td width=50 class=darkTD>글쓴이</td><td width=60% class=darkTD>제목</td><td width=50 class=darkTD>등록날짜</td><tr>";
for($i=0;$i<$su;$i++){
echo "<td height=18 valign=bottom>".$list[$i][user_id]."</td><td>
".htmlspecialchars(stripslashes($list[$i][subject]))."</td><td>".date('Y년m월d일',$list[$i][reg_date])."</td><tr>
<td colspan=4 width=100% class=LightTD></td><tr>
";
}
echo "
</table>
</table>";
}
/* 함수 사용 예 */
main_limit("mino_board_tip|mino_board_php_study|mino_html",10,"웹디자인")
//main_limit( DB이름. DB구분을 | 를 이용한다. , 출력될 게시물수 , 게시판 이름 )
?>
댓글 6
-
밥아저씨
2004.02.21 01:00
-
한꼬마
2004.02.21 05:12
밥 아저씨 //
위의 소스를 보시면 아시겠지만 함수예요. 저 소스만 붙여 사용하는게 아니고 함수를 이용하기 때문에 밥아저씨 의견과 저 함수 사용은 다른 차원으로 생각 하셔야 될겁니다.(이용방법에서) -
임종혁(stargt)
2004.02.21 09:29
굿. -
밥아저씨
2004.02.21 17:54
한꼬마// -_- 한꼬마님 ㅎ2 요 ..흐흐흐흐 그럼 어떻게 써야대용? -
9000㎒
2004.02.21 20:00
밥아저씨 // mysql 정보를 인클루드해와야 합니다 ~_~ -
한꼬마
2004.02.22 03:23
<?
include $_zb_path."outlogin.php";
?>
와 같은 방법으로 적용하시면 됩니다.
이 함수를 저장하는 파일에 db정보를 담기보다는 제로보드의 최근 게시물과 같이
outlogin.php
이 파일에 지정되었듯이 이 함수를 저장한 파일에 db정보를 넣는것 보다는 이 함수를 저장한 파일을 include 시키는 웹페이지에서
<?
$_zb_url = "제로보드가 설치된 url";
$_zb_path = "제로보드가 설치된 절대경로";
include $_zb_path."outlogin.php";
?>
하고 최근게시물을 설정하듯 사용하시면 된다는 뜻입니다.
꼭 저 강좌에 데이터 베이스 정보를 넣을 필요는 없습니다.
어차피 이강좌의 내용을 사용하려면 특정 파일을 만들고 include 시켜 함수를 호출하기 때문에 호출하는 웹페이지에 db정보나 outlogin.php를 include 시켰다면 모두 저장할 필요가 없어질겁니다.
일반적으로 웹페이지를 만들때 inlcude "outlogin.php"를 하고 제로보드를 이용하기 때문에 제로보드 사용한 홈페이지에 사용되는 함수라면 db정보는 큰 의미가 없다는 뜻이었습니다.
제목 | 글쓴이 | 날짜 |
---|---|---|
초간단 설문조사 소스 [3] | 이혁 | 2004.05.27 |
PHP로 구현하는 음악 감상실
[9]
![]() | 컴도미 | 2004.05.21 |
[국밥PHP] 1-1(1). 개념정리 Break Time (Build 1) [7] | 9000㎒ | 2004.05.18 |
팁 아닌 팁 한달전... | http://zentoo.com | 2004.05.15 |
포털사이트 처럼 시스템 점검중 만들기 [3] | http://zentoo.com | 2004.05.14 |
PHP 4에서 PHP 5로 이행 [5] | 이종현 | 2004.04.30 |
PHP5 RC2 Released. [4] | 써니루루☆ | 2004.04.27 |
트랙백 구현하기 - 2. 트랙백의 형식
![]() | TheMics | 2004.04.22 |
트랙백 구현하기 - 2. 트랙백의 형식
![]() | TheMics | 2004.04.22 |
엔지오 채널 따라하기 -_-& www자동 붙이기 [6] | 박종찬 | 2004.04.18 |
트랙백 구현하기 - 1. 트랙백이란 무엇인가?
[4]
![]() | TheMics | 2004.04.18 |
[국에 밥말아먹는 PHP 프로그래밍] 1-1. PHP는 뭐하는 밥이냐?! (상) (Build 2) [17] | 9000㎒ | 2004.04.18 |
배열의 정렬에 대한 약간의 강의 [2] | ♡다솜지기♡ | 2004.04.02 |
드디어 PHP 5 RC1 발표(04.03.18) [8] | 써니루루☆ | 2004.03.19 |
PHP와 MYSQL연동 관련함수 [3] | 백무혼 | 2004.03.07 |
함수] Exec 함수에 대한 간략한 설명 [3] | NS | 2004.03.05 |
초간단 인라이브 방송여부 알아보기 프로그램. [12] | 심심타 | 2004.03.01 |
[허접팁]윈엠프 리스트창에 방송정보 보여주기;;[수정]
[5]
![]() | 『처니리♂』 | 2004.02.29 |
폴더에 사진올려놓고 리스트자동으로 만들기 [7] | 김인기 | 2004.02.22 |
여러 DB에서 최근 게시물 추출하기 위한 소스 입니다. [6] | NS | 2004.02.21 |
테클은 아니고요...제가 워낙 php 지식이면 에초 밖에몰라서요.....
my-sql 에 접근하려면 아이디, 비밀번호 필요하지 않을까요?.....
접근 명령어를 dbconn.php 로 만든다음에 첫번째에서 인쿨르드 시켜야하나요?........