최신글을 그룹별, 게시판의 카테고리별 추출이 가능할까요? > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

최신글을 그룹별, 게시판의 카테고리별 추출이 가능할까요? 정보

최신글을 그룹별, 게시판의 카테고리별 추출이 가능할까요?

본문

여기저기 검색을 해보았는데, 최신글 그룹별 게시판 카테고리를 뽑아오는 팁은
 
많이 보았습니다. 그런데, 단순히 카테고리의 리스트만 뽑아오는 것이 아닌
 
내용까지 뽑아올 수 있는  방법은 없을까 하는 것입니다.
 
한개의 게시판에서 카테고리별 최신글은 아래의 팁으로 가능합니다.
 
 
 
저는 그룹내에 게시판마다 동일한 카테고리가 있어서 그 카테고리별 최신글을
 
뽑아와야 하거든요.   어떻게 해야 할지 모르겠습니다. 도와주세요.

댓글 전체

원하시는게....
저는 그룹내에 게시판마다 동일한 카테고리가 있어서 그 카테고리별 최신글을 뽑아와야 하거든요.

(제가 잘 이해를 못해서요.)

-----------------------------------------------------------
질문1: 1개의 게시판일경우 각각의 분류별로 최신글이 나와야한다.?
==>> 맞나요.? 
-----------------------------------------------------------

아니면
------------------------------------------------------------------------------
질문2: 그룹에 속한 게시판내(테이블)에서 동일한 분류에 속한 최신글이 나와야 한다.?
==>맞나요.?
-------------------------------------------------------------------------------

질문 2가 맞죠.?  그냥 긍금해서 여쭈어 봅니다.
당장 생각하기에는 2가지 방법이 떠오르네요...하나는 board테이블에서 gr_id가 aaa인 게시판들의 bo_table값을 가져온후에 그걸로 latest를 여러번 돌리는것, 그게 아니면 latest_new같은 새로운 latest함수를 만들어서 거기에 추가값에 gr_id를 넘기면 거기에서 board테이블에서 소속 테이블의 bo_table값을 가져와서 함수 안에서 기존의 latest를 여러번 돌리는경우죠

다시보니 둘다 같은거 같긴한데...-_-;;...앞의것은 그룹최신글을 자주 쓰지 않을경우 한번만 쓰는거면 거기에다가 한번만 하면 좋을것 같구, 두번째것은 자주쓸경우 함수화해서 사용이 편리할것 같습니다...^^
그누보드 처음깔면 나오는 index.php의 일부분 수정입니다.
<?
//  최신글
$sql = " select bo_table, bo_subject from $g4[board_table] where gr_id = 'aaa' order by gr_id, bo_table ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
    // 이 함수가 바로 최신글을 추출하는 역할을 합니다.
    // 스킨은 입력하지 않을 경우 관리자 > 환경설정의 최신글 스킨경로를 기본 스킨으로 합니다.

    // 사용방법
    // latest(스킨, 게시판아이디, 출력라인, 글자수);
    echo latest("scroll", $row['bo_table'], 12, 70, "4,25");
    echo "<p>\n";
}
?>

where gr_id = 'aaa' 부분을 추가하면 해당 그룹의 latest만 뽑히죠...거기서 아래의 latest를 많이 보셨다는 카테고리의 리스트 뽑기로 하면 될듯합니다....이게 바로위에서의 1번방법
union이 된다고 치고 10개를 뽑아 온다고 하면

(select * from g4_write_bb1 where wr_is_comment=0  and ca_name= 'AAAA' order by wr_id DESC limit 10)
UNION
(select * from g4_write_bb2 where wr_is_comment=0  and ca_name= 'AAAA'  order by wr_id DESC limit 10)
UNION
(select * from g4_write_bb3 where wr_is_comment=0  and ca_name= 'AAAA'  order by wr_id DESC limit 10)
order by wr_datetime DESC limit 10

UNION은 mysql 버젼 4.0.0 이상부터 됩니다.

union이 지원 안 되면

각 게시판별로 10개씩 끌고 와서
배열에 넣고 날짜순으로 정열한 다음 10개를 뽑아 내야 합니다.
여러가지 답변 감사합니다.  한번 해보겠습니다. 그런데, 워낙 초보인지라 또 다시 시행착오를 많이 겪어야 될 듯 합니다.    너무 어렵네요.  union은 $sql = 에 넣어야 되는 것이지요?
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT