웹마스터 팁
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정보는 큰 의미가 없다는 뜻이었습니다.
제목 | 글쓴이 | 날짜 |
---|---|---|
모바일 이미지 업로드시 세로사진 자동 회전하기
[8]
![]() | Xiso | 2013.10.17 |
css 가운데정렬 완벽정리! | 돼지코구뇽 | 2014.02.14 |
iframe을 이용하여 target효과 주기. [8] | ZipShin | 2002.08.01 |
css 배경이미지 정리 | devdevpia | 2014.02.13 |
스윙브라우저 유저분들 필독. [10] | KSG2013 | 2014.02.08 |
2014년 2월 12일부터 갑자기 사이트(관리자 페이지)가 깨지는 경우. | 새하나모 | 2014.02.12 |
XE 1.7.4 새로운 우편번호 체계에서 나머지주소 관련 사용실수 방지방법입니다 [1] | sejin7940 | 2014.02.07 |
마우스드래그금지 | 레치에스 | 2014.02.11 |
웹뷰 개발시geocode(구글)활용법
![]() | 웹빌드 | 2014.02.10 |
중복레코드 검색 및 삭제 | ByteCMC | 2014.02.10 |
그룹아이콘 모바일에서 표시하기 | 잉카러부 | 2014.02.09 |
1.7.4 업데이트후 글쓰기 에러가 나신다면... [2] | 맞장 | 2014.02.07 |
기본 css 파일 언로드 하기. [9] | 엘카 | 2012.04.26 |
1.7.4 - 페이지나 게시판 생성 후 설정화면에 가면 '사이트기본스킨사용' 이 적용되지 않는 버그 해결법 | sejin7940 | 2014.02.08 |
통합검색할때 회원별 권한에 따라 내용 보여주기 | garnecia | 2014.02.07 |
[수정본] Minify으로 사이트 개선하기
[28]
![]() | 크루씨 | 2012.05.12 |
[XE 1.7] 스팸필터 설정이 안되는 경우 해결 방법 [3] | 퍼니엑스이 | 2014.02.03 |
관리자화면 상단의 업데이트 해야할 항목 안내문구 안 나오게 하는 방법 [1] | sejin7940 | 2014.02.04 |
XE 루트로 접속하기 (이동 필요없음) [12] | 모앱 | 2013.03.03 |
ux를 편리하게 하기 위한 css 팁 | 두랄루민 | 2014.02.03 |
테클은 아니고요...제가 워낙 php 지식이면 에초 밖에몰라서요.....
my-sql 에 접근하려면 아이디, 비밀번호 필요하지 않을까요?.....
접근 명령어를 dbconn.php 로 만든다음에 첫번째에서 인쿨르드 시켜야하나요?........