[킴스큐 Rb]게시물 추출 스탠다드 소스코드
원문 URL: http://www.kimsq.com/r/tiptech/688#.
게시물 추출 기본 루프
게시물 추출쿼리를 통해 추출된 게시물 데이터를 가공하는 가장 기본적인 소스코드 형식입니다.
DB로부터 조건에 따라 추출한 게시물데이터를 while 로 반복하여 출력합니다.
<?php $RCD = 추출데이터?>
<?php while($R=db_fetch_array($RCD)):?>
<a Href="<?php echo getPostLink($R)?>"><?php echo $R['subject']?></a>
여기에 필요한 게시물 데이터를 $R['필드네임'] 형식으로 기술합니다.
<?php endwhile?>
<?php if(!db_num_rows($RCD)):?>
게시물이 없습니다.
<?php endif?>
1. 전체게시물 추출
<?php $RCD = getDbArray($table['bbsdata'],'display=1','*','gid','asc','추출수',1)?>
위의 getDbArray() 함수를 통해서 얻어지는 소스 :
<?php $RCD = db_query('select * from '.$table['bbsdata'].' where display=1 order by gid asc limit 0,추출수',$DB_CONNECT)?>
2. 특정게시판의 게시물 추출
<?php $RCD = getDbArray($table['bbsdata'],'bbs=게시판UID and display=1','*','gid','asc','추출수',1)?>
위의 getDbArray() 함수를 통해서 얻어지는 소스 :
<?php $RCD = db_query('select * from '.$table['bbsdata'].' where bbs=게시판UID and display=1 order by gid asc limit 0,추출수',$DB_CONNECT)?>
[참고] 게시판UID를 알 수 있는 방법 :
게시판모듈 관리자페이지에서 게시판을 선택한 후 브라우져 주소줄을 보면 다음과 같은 형식의 주소코드를 확인할 수 있습니다. 여기에서 마지막 uid=1 의 지정된 숫자가 게시판UID입니다.
rb/?r=home&m=admin&module=bbs&front=main&recnum=15&p=1&uid=1
[참고] $R['필드네임'] 으로 기술할 수 있는 필드내역
게시물 데이터 등록정보 - $table['bbsdata']
(테이블식별자_bbs_data)
필드
형식
NULL
기본
AUTO
IDX
내용
uid
int(11)
NO
Y
PK
PK
site
int(11)
NO
0
IDX
사이트
uid
gid
double(11,2)
NO
0
IDX
출력순서
bbs
int(11)
NO
0
IDX
게시판
PK
bbsid
varchar(30)
NO
IDX
게시판코드
depth
tinyint(4)
NO
0
답변글깊이
parentmbr
int(11)
NO
0
IDX
부모회원
uid
display
tinyint(4)
NO
0
IDX
최근글추출여부(0=허용안함,1=허용)
hidden
tinyint(4)
NO
0
비밀글여부(0=일반글,1=비밀글)
notice
tinyint(4)
NO
0
IDX
공지글여부(0=일반글,1=공지글)
name
varchar(30)
NO
등록자명
nic
varchar(50)
NO
등록자
닉네임
mbruid
int(11)
NO
0
IDX
등록회원
uid
id
varchar(16)
NO
등록회원
id
pw
varchar(50)
NO
패스워드
category
varchar(100)
NO
IDX
분류
subject
varchar(200)
NO
IDX
제목
content
mediumtext
NO
내용
html
varchar(4)
NO
내용
html여부
tag
varchar(200)
NO
IDX
태그
hit
int(11)
NO
0
조회수
down
int(11)
NO
0
다운로드수
comment
int(11)
NO
0
댓글수
oneline
int(11)
NO
0
한줄의견수
trackback
int(11)
NO
0
받은트랙백수
score1
int(11)
NO
0
점수1
score2
int(11)
NO
0
점수2
singo
int(11)
NO
0
신고수
point1
int(11)
NO
0
지급포인트
point2
int(11)
NO
0
열람포인트
point3
int(11)
NO
0
적립금용
예비필드
point4
int(11)
NO
0
예치금용
예비필드
d_regis
varchar(14)
NO
IDX
등록시간
d_modify
varchar(14)
NO
갱신시간
d_comment
varchar(14)
NO
마지막
댓글 등록시간
d_trackback
varchar(14)
NO
마지막
트랙백받은 시간
upload
text
NO
첨부파일
코드
ip
varchar(25)
NO
아이피
agent
varchar(150)
NO
에이젼트
sns
varchar(100)
NO
SNS코드
adddata
text
NO
여분필드
3. 특정게시판의 카테고리 게시물 추출
<?php $RCD = getDbArray($table['bbsdata'],"bbss=게시판UID and category='카테고리명' and and display=1",'*','gid','asc','추출수',1)?>
위의 getDbArray() 함수를 통해서 얻어지는 소스 :
<?php $RCD = db_query('select * from '.$table['bbsdata']." where bbs=게시판UID and category='카테고리명' and display=1 order by gid asc limit 0,추출수",$DB_CONNECT)?>
4. 복수 게시판의 게시물 추출
<?php $RCD = getDbArray($table['bbsdata'],'(bbs=게시판UID or bbs=게시판UID or bbs=게시판UID) and display=1','*','gid','asc','추출수',1)?>
위의 getDbArray() 함수를 통해서 얻어지는 소스 :
<?php $RCD = db_query('select * from '.$table['bbsdata'].' where (bbs=게시판UID or bbs=게시판UID or bbs=게시판UID) and display=1 order by gid asc limit 0,추출수',$DB_CONNECT)?>
5. 정렬옵션을 이용한 추출
기본 추출코드에서 기본적으로 gid , asc 가 있는데 이것을 다음과 같이 설정할 수 있습니다.
- 댓글이 많은 순서로 추출 : comment , desc
- 조회가 많은 순서로 추출 : hit , desc
- 다운로드가 많은 순서로 추출 : down , desc
- 한줄의견이 많은 순서로 추출 : oneline , desc
- 평가점수가 높은 순서로 추출 : score1 , desc
- 마지막댓글 순서로 추출 : d_comment ,desc