[제로보드팁] 카테고리를 이용하는 방명록형태의 게시판에서 최근게시물 사용

카테고리를 사용하며 방명록 형태의 게시판의 최근게시물 관련팁입니다.
php에 관해서 잘 모르는지라 짜집기한 소스라 어떤지 모르겠습니다.
먼저, 제로보드 루트 폴더에 있는 outlogin.php를 열어줍니다.
그리고 나서 맨 밑에 아래 구문을 추가합니다.
물론 ?> 안쪽에요.
———————————-
function print_bbs2($skinname, $title, $id, $num=5, $textlen=30,$cate, $datetype=”Y/m/d”) {

       global $_zb_path, $_zb_url, $connect, $t_board, $admin_table;

       if(!$skinname||!$id||!$title) return;

       $str = zReadFile($_zb_path.”latest_skin/”.$skinname.”/main.html”);
       if(!$str) {
               echo “지정하신 $skinname 이라는 최근목록 스킨이 존재하지 않습니다
“;
               return;
       }
       $setup = mysql_fetch_array(mysql_query(“select use_alllist from $admin_table where name=’$id’”));
               if($setup[use_alllist]) $target = “zboard.php?id=”.$id;
       else $target = “view.php?id=”.$id;
       if ($cate==0) { //만일 카테고리 인수가 0이라면 (전체출력)
       $result = mysql_query(“select * from $t_board”.”_$id where is_secret=0 order by no desc limit $num”, $connect) or die(mysql_error());
}
               else { //하나의 카테고리만 출력할경우엔
               $result = mysql_query(“select * from $t_board”.”_$id where is_secret=0 and category=$cate order by no desc limit $num”, $connect) or die(mysql_error());
}

       $tmpStr = explode(“[loop]”,$str);
       $header = $tmpStr[0];
       $tmpStr2 = explode(“[/loop]”,$tmpStr[1]);
       $loop = $tmpStr2[0];
       $footer = $tmpStr2[1];

       // 공지사항 형식을 만들때 사용
       if(eregi(“\[notice\_”,$header)) {
       }
       $main_data = “”;
       $p= array();
       while($data=mysql_fetch_array($result)) {
       $cate_result = mysql_query(“select * from zetyx_board_category_$id where no=’$data[category]’”) or die(mysql_error()); //카테고리에 관한 정보
       $m_category = mysql_fetch_array($cate_result);  
       $cr=$data[category];//즉시 출력되는 게시물의 카테고리 정보
       $name = stripslashes($data[name]);
       $subject = cut_str(stripslashes($data[subject]),$textlen).”“;
       $date = date($datetype, $data[reg_date]);
       if($data[total_comment]) $comment = $data[total_comment]; else $comment=””;
       $main = $loop;
       $main = str_replace(“[cate]”,$m_category[name],$main); //카테고리명 출력
       $main = str_replace(“[name]”,$name,$main);
       $main = str_replace(“[date]”,$date,$main);
       $p[$cr]++; //지금 출력되고 있는 카테고리 정보의 페이지를 증가.
               $main = str_replace(“[subject]”,”“.$subject.”“,$main);                
               $main = str_replace(“[comment]”,$comment,$main);
       $main_data .= “\n”.$main;
       }
       $list = $header.$main_data.$footer;
       $list = str_replace(“[title]”,”“.$title.”“,$list);
       $list = str_replace(“[dir]”,$_zb_url.”latest_skin/”.$skinname.”/images/”,$list);
       echo $list;                        
        }
———————————————————-
이걸로 끝이 났습니다.
사용법은

만일에 전체 리스트를 출력한다면(카테고리 신경안쓰고) 카테고리번호에 0을 넣어주시면 됩니다.
또한 최근게시물을 출력할때 카테고리 명도 같이 나타내고 싶으시다면
사용하시는 최근게시문 스킨의 main.html을 여셔서
적당한 장소(출력하고자하는)에 [cate] 를 넣어 주시면 됩니다.

문제점이 있으시다면 댓글을!


Posted

in

by

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *