최근 게시물이 반복되어 출력 되는데... 해결방법이......??? > 그누4 질문답변

그누4 질문답변

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

최근 게시물이 반복되어 출력 되는데... 해결방법이......??? 정보

최근 게시물이 반복되어 출력 되는데... 해결방법이......???

본문

그누보드의 편리함으로 어제 처음으로 테스트 겸해서 깔아 보앗습니다.
 
작동감은 아주 가볍고 빨리 돌아
어쩌면 제로보드보다 편하기도 하네요...
 
한데 문제는....
 
그누보드 자료 받은 대로 셋팅이 된지라....
아무것도 건드린 적이 없는데....
 
신기하게도 매 처음 초기화면에서
모든 게시판의 글들이 출력 되는것이 싫어서
몇개의 게시판만을 추려서 출력해 보았습니다.
 
물론 basic 최근 게시물 스킨을 사용하였고요.
근데 신기한것이......
똑같은 게시물이 10번씩이나 반복되네요.
 
이것을 어떻게 해결해야 하는지 검색해 보앗으나 두렸한 답변이 없더군요...
물론 <? = latest("basic", free_board, 5, 70, "4,25"); ?> 으로는 해결이 되지 않았고요...
 
어떻게 다루는 방법을 아시는분 알려 주세요.
 
제가 만진것은 이게 다 입니다.
 
<!-- 메인화면 최신글 시작 -->
<table width="100%" cellpadding=0 cellspacing=0><tr><td valign=top>
<?
//  최신글
$sql = " select bo_table, bo_subject from $g4[board_table] 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";
     echo latest("basic", free_board, 5, 70, "4,25");
     echo "<p>\n";
     echo latest("basic", academy_info, 5, 70, "4,25");
     echo "<p>\n";
     echo latest("basic", lental_info, 5, 70, "4,25");
     echo "<p>\n";
}
?>
</td></tr></table>
<!-- 메인화면 최신글 끝 -->
 
물론 제 시스템이 윈도우즈 2003에 iis여서 그럴수도 있지만
윈도우즈는 지원되지 않느다고 하였지만 나머지 부분은 모두 정상이네요....
그럼 위 처럼 10번식 최근 게시물이 반복 되는것은 윈도우즈 서버라서 생기는 현상인지도 궁금합니다.
 
수고하시고요..
 
해당 사이트는 http://www.photoacademy.biz/index1.php 입니다.
 
 
아참 그리고 최근 게시물 출력 법에서요....
// echo latest("scroll", $row['bo_table'], 12, 70, "4,25");
위 부분들중
// latest(스킨, 게시판아이디, 출력라인, 글자수); 은 알겠으나
맨 마지막에 "4,25" 가 의미하는 바가 무엇인지 궁급합니다.
 

댓글 전체

<table width="100%" cellpadding=0 cellspacing=0><tr><td valign=top>
<?
//  최신글
$sql2 = " select bo_table, bo_subject from $g4[board_table] order by gr_id, bo_table ";
$result2 = sql_query($sql2);
for ($i=0; $row2=sql_fetch_array($result2); $i++){
//모든 게시판중 free_board 1개에서만
if($row2[bo_table] =='') 
  echo latest("basic", free_board, 5, 70, "4,25");
  echo "<p>\n"; 
}
?>
</td></tr></table>
빠른 답변 감사 드립니다.

근데 위처럼 하닌까...
제일 처음에 로딩시킨 게시판이 나오지 않아 두번식 써 주어야지 로딩이 되네요.

    echo latest("basic", free_board, 5, 70, "4,25");
    echo "<p>\n";
    echo latest("basic", free_board, 5, 70, "4,25");
    echo "<p>\n";
    echo latest("basic", academy_info, 5, 70, "4,25");
    echo "<p>\n";
    echo latest("basic", lental_info, 5, 70, "4,25");
    echo "<p>\n";

근데... 이상한것은 그래도 또 10번이 돌아요...^^;
윈도우즈라서 그럴까여?

http://www.photoacademy.biz/index1.php

글고 또 하나 궁금한것은....
$sql2이런 식으로 2로 만드셨는데.....
2가 의미하는 바가 무엇인지 설명좀 부탁드릴께요...
죄송합니다.
$sql = " select bo_table, bo_subject from $g4[board_table] order by gr_id, bo_table ";

위 구문을 보죠..
모든 게시판의 정보를 담고 있는 $g4[board_table] 에서 즉 g4_board 라는 테이블에서
bo_table 이라는 테미블명과 테이블 제목을 가지고 오는데
gr_id 즉 그룹별로 주문을 했습니다.
그러면
$result = sql_query($sql);

이 레절트라는 결과의 수는 테이블의 갯수가 되겠죠.


10번을 반복해서 페치어레이를 해서 출력을 하면
for ($i=0; $row=sql_fetch_array($result); $i++) {

$row['bo_table'] 에는 
free-board .... 등등등이 자동으로 할당이되겠죠.

자동으로 모든 게시판에서 뽑아지게 되어있잖아요.

여기서 원하는 게시판만 추출하려면 제가 말씀드린대로 하셔야죠....
아니면 쿼리가 기하급수로 늘어나게 되겠죠.
$sql2 라고 한것은 별 의미없습니다.
좀더... 효율적으로 코딩한다면..
즉 모든 게시판에서 쿼리하고 골라내는 방법이 아닌
하나의 테이블만 찍어서 뽑아내려면...

<table width="100%" cellpadding=0 cellspacing=0><tr><td valign=top>
<?
$one_table='free_board';
$sql2 = "select bo_table, bo_subject from $g4[board_table] where bo_table ='{$one_table}'";
$result2 = sql_query($sql2);
$row2=sql_fetch_array($result2);       
echo  latest(basic,$row2[bo_table], 5, 70);
?>
</td></tr></table>
답변 너무 너무 감사합니다.

아마 제 생각에는 게시판 수가 총 10개이기 때문에 10개가 출력 되는듯합니다.

하지만 님께서 첫번째로 알려 주신 방법은 게시판 수를 인지하는 소스가
보드 안에 어딘가에 있는듯 한것 같아서 한참 찾으면서 제거 할려고 노력해 보았으나
제 실력으로는 못찾겠더군요.

마지막 님이 알려 주신 방법은 깔끔하게 한개의 게시물만을 지정해 주시니
바로 한개만 제가 원하는대로 출력 되더군요.

매우 감사합니다.
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

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