자동 메뉴에서 게시판별 오늘 등록된 게시물수 와 전체 게시물 수 출력 질문 > 그누4 질문답변

그누4 질문답변

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

자동 메뉴에서 게시판별 오늘 등록된 게시물수 와 전체 게시물 수 출력 질문 정보

자동 메뉴에서 게시판별 오늘 등록된 게시물수 와 전체 게시물 수 출력 질문

본문

http://www.sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=6879 님의 스킨을 사용중입니다. 요즘은 궁금한게 생겨도 글 남기는게 조심스러워 지네요...
새해 복 많이 받으세요!!!

각설하고, 자동화메뉴를 사용중인데 찾아봐도 잘 모르겠네요..
하다하다 안되서리...

소스는 아래와 같고요
아래껀...이틀이라는 시간동안만 출력되고 리셋이 되는가 보더라구요..잘은 모르지만..
계속 유지하고 싶은데...총게시물 수를...요!!
방법이 없을까요 ? 게시판별 전체게시물 계속 유지되서 출력되게끔!!
그리고... 그룹별 전체 게시물 수 도 영구적으로 출력되게끔 할 수 있을까요 ? 그렇다면 방법좀 알려주세요...

<? if (!defined("_GNUBOARD_")) exit; //gbcRFcss.php, gbcRFskin
/////////////////////////////////////////////////////////////////////////////
//그룹, 게시판, 분류 확장 메뉴 라이브러리(gbcRF_menu.lib.php) 연동
//호출방법 gbcRF_menu("스킨디렉토리", "그룹아이디");
//그룹아이디 비워두면 전체그룹 에서 추출
// CSS로 구현한 그누보드4 게시판 및 분류 자동추출 세로 메뉴스킨
// 게시판 및 분류에서 위치표시+새글갯수 표시, 분류 세로열 조정가능
// 2007년 3월 18일 일요일 최종 수정 - 플록

?><style type="text/css">
#bcRFV_global { /*메뉴 가장자리를 감싸는 영역*/
  margin:0; padding:0;
  width:180px;
  /*background:url(<?=$menu_skin_path?>/img/box_bg.gif) repeat-y transparent;*/
  /*background-color:transparent;*/
  position:relative;
}
  #bcRFV_bottom { /*메뉴 가장자리를 감싸는 영역*/
    border:0px solid #DDD;
    margin:0;
    width:180px;
    /*background:url(<?=$menu_skin_path?>/img/box_bottom.gif) no-repeat #FFF;*/
  }

  #bcRFV_group { /*그룹메뉴 영역*/
    margin:0 0 5px 0;
    padding:5px;
    color: #FF3300;
    height: 20px;
    /*background:url(<?=$menu_skin_path?>/img/box_top.gif) no-repeat transparent;*/
    border-bottom:#D0D0D0 solid 1px;
  }
    #bcRFV_group a.groupSubject { /*그룹제목 스타일*/
      width:154px;/*block 설정시 너비 빼먹으면 msie에서 안먹힘*/
      height:20px;
      display:block; /*포인터 영역 확대*/
    }

  #bcRFV_board { /*게시판 제목*/
    font-family: 굴림,돋음;
    font-size: 9pt;
    padding:0;
    position:relative;
  }
    #bcRFV_board a.boardLink { /*게시판제목 링크 스타일*/
      width:100%;/*block 설정시 너비 빼먹으면 msie에서 안먹힘*/
      padding:3px 0 2px 0;
      display:block; /*포인터 영역 확대*/
    }
      /*게시판 목록 밑줄 설정 - class 부분 3항연산*/
      #bcRFV_board a.uline {
        border-bottom:1px solid #EFEFEF;
      }
      #bcRFV_board a.cline {
        border:0px;
      }
      /* pos
      -------------------------------------- */
      .groupPos {font-weight:bold;color:darkblue;}
      .boardPos {font-weight:bold; color:darkblue;}
 
  #bcRFV_sub { /*분류 영역*/
    width:180px;/*ie*/
    position:relative;
  }
    #bcRFV_sub a.subLink { /*분류제목 링크 스타일 - 사용안함*/
      font-size:8pt;
      margin:0px;
      border-bottom:0px dotted gray;
    }
    #bcRFV_sub a.sub_pos {
      font-weight:normal; color:darkblue;
    }

.bg_silver {
  background-color:silver;
}
.bg_gray {
  background-color:gray;
}
.bg_bs {
  background-color:#CCCCCC;
}

.boardLink:hover, .boardLink:hover a,
.boardLink:focus, .boardLink:focus a:focus {
  color: #000000;
font-family: 굴림,돋음;
    font-size: 9pt;
  text-decoration: none;   
}

.new {
  font: small-caps 400 8pt/9pt arial;
  color:red;
}
.newc {
  font: 8pt/9pt arial;
}
</style>

<?
// rolo님 메뉴스킨 라이브러리 참조, 일반적인 조건으로 쿼리
// 제외 게시판 - 전체 검색 사용 no, 목록열람 레벨
// 나스카님 원글 및 분류별 새글 카운트(izen님 php속도향상팁 적용)
/*logic/
//현재 배열요소의 키(key)값은 각 루프의 $key변수로 지정된다.//여기서 필요한가??
//foreach( $list as $key=> $value){
foreach($list as $value){
  echo "<DIV><b>" . $value['gr_subject'] . "</b> (" . $value['gr_id'] . ")";
  foreach( $value['bbs'] as $bbs){
    echo "<dd><b>" . $bbs['bo_subject'] . "</b></dd>";
    foreach( $bbs['sca'] as $category){
      echo "<dd><i>" . $category . "</i></dd></DIV>";
  }
  }
}
/*/
?><div id='bcRFV_global'><div id='bcRFV_top'></div><?

//그룹
foreach($list as $value){
  //$menu_size= count( $list);
  $bbs_size= count( $value['bbs']);

  $bar_color = ($value['gr_id'] == "tmp") ? 'bg_silver' : '';//그룹바 색상
  $bar_color .= ($value['gr_id'] == "test") ? 'bg_bs' : '';
  $bar_color .= ($value['gr_id'] == "blog") ? 'bg_bs' : '';

  $gSubject = ($value['gr_id'] == $gur)?"<span class='groupPos'>":"<span style='font-weight:bold;'>";
  $gSubject .= cut_str(get_text($value['gr_subject']),20,"") . "</span>";
  $gSubject .= "<span style='font-size:8pt;'>&nbsp;Total:" . $bbs_size . " </span>";
  //특정 그룹 링크는 gr_10 필드에 전체 url를 입력한다. 나머지 그룹의 링크는 적절히 수정한다.
  $gLink = (!empty($value['gr_10']))?$value['gr_10']:$g4['path'].'.'.'/bbs/group.php?gr_id=' .$value['gr_id'];

  ?><div id="bcRFV_group"  class="<?=$bar_color?>"><!--<a href='<?=$gLink?>' onfocus='this.blur()' class="groupSubject">--><?=$gSubject?></div><?
  //게시판
  $cntb = 0;
  foreach($value['bbs'] as $bbs){
    $tmp_write_table = $g4['write_prefix'] . $bbs['bo_table'];
    $intime = date("Y-m-d H:i:s", time()-3600*$bbs['bo_new']);
    //원글 및 코멘트 새글 카운트 by nasca, izen님 빠른쿼리로 보강
    $sql_new = mysql_query(" select count(wr_datetime) as wr_datetime from $tmp_write_table where wr_is_comment = '0' and wr_datetime >= '$intime' ");//and wr_option not like '%secret%'
    $row_new = mysql_fetch_array($sql_new);
    $sql_cm_new = mysql_query(" select count(wr_datetime) as wr_datetime from $tmp_write_table where  wr_is_comment <> '0' and wr_datetime >= '$intime' ");
    $row_cm_new = mysql_fetch_array($sql_cm_new);

    $bn_count = $row_new['wr_datetime'];
    $bn_countc = $row_cm_new['wr_datetime'];
    //관리를 위한 목록열람레벨
    $llevel = (($member['mb_level'] > 5) && ($bbs['bo_list_level'] > 1))?"<span class='small'> #" . $bbs['bo_list_level'] . "</span>":"";

    $new = ($bn_count || $bn_countc > 0)?"<span class='new'>" . $bn_count . '/' . $bn_countc . "</span>":'';
     
    foreach( $bbs['sca'] as $category){//분류가 있고 분류사용 체크된 게시판 별도표시
      //카테고리 유,무 표시
      $picon = (($bbs['bo_use_category'] == "1") && ($category))?"<span>&nbsp;+":"<span>&nbsp;-";
      $micon = (($bbs['bo_use_category'] == "1") && ($category))?"":"";
      $sicon = ($bbs['bo_table'] == $bo_table)?$micon:$picon;
      //$sicon = (($bbs['bo_use_category'] == "1") && ($category))?"<span>&nbsp;+</span>":"";
    }

    $bSubject = ($bbs['bo_table'] == $bo_table)?"<span class='boardPos'>":"<span>";
    $bSubject .= cut_str(get_text($bbs['bo_subject']),20,"…") . $new . $llevel . "</span>";
    //특정 게시판 링크는 bo_7 필드에 전체 url 입력한다. 나머지 게시판의 링크는 목록으로..
    $bLink = (!empty($bbs['bo_7']))?$bbs['bo_7']:$g4['bbs_path'].'/'.'board.php?bo_table=' .$bbs['bo_table'];

    $cntb++;
    ?><div id='bcRFV_board'><a href='<?=$bLink?>' class='boardLink <?=$cntb<$bbs_size?'uline':'cline';/*밑줄설정*/?>' onfocus='this.blur()'><?=$sicon?> <?=$bSubject?></a></span><?

    //분류목록 세로배열
    $bo_width = 100;//전체 테이블 너비 %
    $cols = 2;//세로 칼럼수
    $ca_width = intval($bo_width / $cols);//셀 너비

    //게시판이고 분류사용 체크되있으며 분류내용 있는 경우
    if (($bbs['bo_table'] == $bo_table) && (($bbs['bo_use_category'] == "1") && ($category))){

      ?><div id='bcRFV_sub'>
   
      <div style="width:<?=$bo_width?>%; border:0px solid white;"><?
       
      //분류
      $cntc = 1;
      foreach( $bbs['sca'] as $category){
        //bo_new에서 지정한 시간내 분류별 원글 및 코멘트 새글 카운트 by nasca, izen님 빠른쿼리로 보강
        $sql2_new = mysql_query(" select count(wr_datetime) as wr_datetime from $tmp_write_table where wr_is_comment = '0' and wr_datetime >= '$intime' and ca_name = '$category'");
        $row2_new = mysql_fetch_array($sql2_new);
        $sql2_cm_new = mysql_query(" select count(wr_datetime) as wr_datetime from $tmp_write_table where wr_is_comment <> '0' and wr_datetime >= '$intime' and ca_name = '$category'");
        $row2_cm_new = mysql_fetch_array($sql2_cm_new);

        $cn_count = $row2_new['wr_datetime'];
        $cn_countc = $row2_cm_new['wr_datetime'];

        $new2 = ($cn_count || $cn_countc > 0)?"<span class='new'> (" . $cn_count . ' / ' . number_format($total_count) . ")</span>":'';

        //링크에서 한글로된 카데고리 이름을 urlencode시킴
        $sca_url = urlencode($category);

        $ca_subject = cut_str(get_text($category),10,"") . $new2;

        ?><span style="width:<?=$ca_width?>%;padding:2 0 3 2;"><a href='<?=$g4['bbs_path']?>/board.php?bo_table=<?=$bbs['bo_table']?>&sca=<?=$sca_url?>' class="subLink <?=($category == $sca)?'sub_pos':'';/*해당분류*/?>" onfocus='this.blur()'><?=$bar?><?=$ca_subject?></a></span><?

        if ($cntc == $cols){
          $cntc = 0;
          ?></div><div style="width:<?=$bo_width?>%; border:0px solid red;"><?
        }

        $cntc++;
           
      }//foreach category
      ?></div></div><?
    }//if
    ?></div><?
  }//foreach bbs
}//foreach group
?>
  • 복사
작성자에 의해 채택됐습니다.
원본소스를 참고해서 알려드릴걸 그랬군용;;;

맨 윗분이 total_count 함수를 언급해서 그 함수만 봤더니;;

$bn_countc = $row_cm_new['wr_datetime']; 이 부분 아래에다

    $sql_total = mysql_query(" select count(wr_datetime) as wr_datetime from $tmp_write_table where wr_is_comment = '0'  ");
    $row_total = mysql_fetch_array($sql_total);

    $bn_total = $row_total['wr_datetime'];

이걸 추가하시고

$new = ($bn_count || $bn_countc > 0)?"<span class='new'>" . $bn_count . '/' . $bn_countc . "</span>":'';
이걸

$new = "<span class='new'>" . $bn_count . '/' . $bn_total . "</span>";

이렇게 바꾸세요

댓글 전체

전체 게시물과 오늘의 게시물을 나타내는 소스가..

$new2 = ($cn_count || $cn_countc > 0)?"<span class='new'> (" . $cn_count . ' / ' . number_format($total_count) . ")</span>":'';
..인데요..
조건이..
$cn_count 이 있거나 0보다 클때 즉, 오늘의 게시물이 있을때 전체 게시물 표시까지 나오게 되어 있네요.
그리고 바로 아래쪽에...
$ca_subject = cut_str(get_text($category),10,"") . $new2;
이렇게 된거랑 같이 수정하면 될거 같아요.

그래서 아래처럼 분리하여 표시하면 전체부분은  되지 않을까 싶어요.
$new2 = ($cn_count || $cn_countc > 0)?"<span class='new'> " . $cn_count . " / </span>":'';

$ca_subject = cut_str(get_text($category),10,"") . $new2 . "<span class='new'>" . number_format($total_count) . "</span>";

잘못된거있음 이거 읽어보는 고수님들이 수정해주실꺼야요.. 믿어요!!! ^0^/
$total_count 함수가 어디서 나온건지 궁금합니다. 원본소스를 들어가 봐도 $total_count를 사용한 흔적은 없던데;;

질문자께서 임의로 넣으신건가요??

아! 답변은 드리고 싶은데 원본소스를 기준으로 해야할지 질문자 께서 올린 소스를 기준으로 해야할지;;

하튼 뭐 대충 눈대중으로 $total_count 를 임의로 넣은 것이라면

대충해서 $total_count 이 함수가 있는 윗 부분 아무대나 아래 것을 넣으세요

$sql2_total = mysql_query(" select count(wr_datetime) as wr_datetime from $tmp_write_table where wr_is_comment = '0' and ca_name = '$category'");
$row2_total = mysql_fetch_array($sql2_total);
$total_count = $row2_total['wr_datetime'];

아참 원본소스는 오늘글수/전체글수 가 아니라 오늘글수/오늘코멘트수 였습니다
토탈카운터 는 임의로 넣은거 맞아요 ㅋ관련된 코드는 적용이 안되서 뺏다는... 덧글 감사합니다^^ 문젠 해결되지 않았지만.덧글 자체만으로 대만족입니다.
분류 아래에 코드는 아마 카테고리 출력시 나타나는 함수들인거 같아요...검색해서 유사 소스를 가주고 임의로 붙인걸 다시 뺀거네용ㅎㅎ카테고리 출력은 하지 않으므로(소스가 또 --적용이 안되라고용)
오늘 등록된 게시물 카운터는... 별 수 없이 --;;없앴고요
게시판 별 전체게시물 수만 출력되게끔 했네요

//게시판
  $cntb = 0;
  foreach($value['bbs'] as $bbs){
    $tmp_write_table = $g4['write_prefix'] . $bbs['bo_table'];
    $intime = date("Y-m-d H:i:s", $bbs['bo_new']);
    //원글 및 코멘트 새글 카운트 by nasca, izen님 빠른쿼리로 보강

원본은  $intime = date("Y-m-d H:i:s", time()-3600*$bbs['bo_new']); 인데
 $intime = date("Y-m-d H:i:s", $bbs['bo_new']); 이케 타임부분을 삭제하니..총게시물 수가 나타나긴 하더라구용^^;;;
작성자에 의해 채택됐습니다.
원본소스를 참고해서 알려드릴걸 그랬군용;;;

맨 윗분이 total_count 함수를 언급해서 그 함수만 봤더니;;

$bn_countc = $row_cm_new['wr_datetime']; 이 부분 아래에다

    $sql_total = mysql_query(" select count(wr_datetime) as wr_datetime from $tmp_write_table where wr_is_comment = '0'  ");
    $row_total = mysql_fetch_array($sql_total);

    $bn_total = $row_total['wr_datetime'];

이걸 추가하시고

$new = ($bn_count || $bn_countc > 0)?"<span class='new'>" . $bn_count . '/' . $bn_countc . "</span>":'';
이걸

$new = "<span class='new'>" . $bn_count . '/' . $bn_total . "</span>";

이렇게 바꾸세요
© SIRSOFT
현재 페이지 제일 처음으로