Warning: Undefined array key "mobile_dir" in /home/kagla/new-sir/old/common.php on line 315
최신글을 하나의 게시판이 아닌 여러 게시판에서 받아오고 싶습니다.

최신글을 하나의 게시판이 아닌 여러 게시판에서 받아오고 싶습니다.

최신글을 하나의 게시판이 아닌 여러 게시판에서 받아오고 싶습니다.

QA

최신글을 하나의 게시판이 아닌 여러 게시판에서 받아오고 싶습니다.

답변 2

본문


<latest.lib.php>


 
//skin_dir : 스킨명 , $bo_table : 게시판코드배열, rows : 출력 갯수, $subject : 게시판 제목
function latestNew($skin_dir='', $bo_tableobj, $subject, $rows=10, $subject_len=40, $cache_time=1, $options='')
 {
     global $g5;

     if (!$skin_dir) $skin_dir = 'basic';

     if(preg_match('#^theme/(.+)$#', $skin_dir, $match)) {
         if (G5_IS_MOBILE) {
             $latest_skin_path = G5_THEME_MOBILE_PATH.'/'.G5_SKIN_DIR.'/latest/'.$match[1];
             if(!is_dir($latest_skin_path))
                 $latest_skin_path = G5_THEME_PATH.'/'.G5_SKIN_DIR.'/latest/'.$match[1];
             $latest_skin_url = str_replace(G5_PATH, G5_URL, $latest_skin_path);
         } else {
             $latest_skin_path = G5_THEME_PATH.'/'.G5_SKIN_DIR.'/latest/'.$match[1];
             $latest_skin_url = str_replace(G5_PATH, G5_URL, $latest_skin_path);
         }

         $skin_dir = $match[1];
     } else {
         if(G5_IS_MOBILE) {
             $latest_skin_path = G5_MOBILE_PATH.'/'.G5_SKIN_DIR.'/latest/'.$skin_dir;
             $latest_skin_url  = G5_MOBILE_URL.'/'.G5_SKIN_DIR.'/latest/'.$skin_dir;
         } else {
             $latest_skin_path = G5_SKIN_PATH.'/latest/'.$skin_dir;
             $latest_skin_url  = G5_SKIN_URL.'/latest/'.$skin_dir;
         }
     }

   $fboard = implode("_", $bo_tableobj);

     $cache_fwrite = false;
     if(G5_USE_CACHE) {
         $cache_file = G5_DATA_PATH."/cache/latest-{$fboard}-{$skin_dir}-{$rows}-{$subject_len}.php";

         if(!file_exists($cache_file)) {
             $cache_fwrite = true;
         } else {
             if($cache_time > 0) {
                 $filetime = filemtime($cache_file);
                 if($filetime && $filetime < (G5_SERVER_TIME - 3600 * $cache_time)) {
                     @unlink($cache_file);
                     $cache_fwrite = true;
                 }
             }

             if(!$cache_fwrite)
                 include($cache_file);
         }
     }

     if(!G5_USE_CACHE || $cache_fwrite) {
         $list = array();

     $arrboard = implode("','", $bo_tableobj);

         $sql = " select * from {$g5['board_new_table']} where bo_table in ('{$arrboard}') and wr_id = wr_parent order by bn_datetime desc limit 0, {$rows}";
         $bres = sql_query($sql);
         $bo_subject = get_text($subject);

     for($i=0; $brow = sql_fetch_array( $bres ); $i++ ){
       $tmp_write_table = $g5['write_prefix'] . $brow['bo_table']; // 게시판 테이블 전체이름
       $sql = " select * from {$tmp_write_table} where wr_id = '{$brow['wr_id']}' ";
       $row = sql_fetch( $sql );
       $t_board = array ('bo_table' = $brow['bo_table'];
        $list[$i] = get_list($row, $t_board, $latest_skin_url, $subject_len);
     }

         if($cache_fwrite) {
             $handle = fopen($cache_file, 'w');
             $cache_content = "<?php\nif (!defined('_GNUBOARD_')) exit;\n\$bo_subject='".$bo_subject."';\n\$list=".var_export($list, true)."?>";
             fwrite($handle, $cache_content);
             fclose($handle);
         }
     }

     ob_start();
     include $latest_skin_path.'/latest.skin.php';
     $content = ob_get_contents();
     ob_end_clean();

     return $content;
 }
 


<index.php> 



$arrbo_table = array('notice','Testimony');
echo latestNew('basic', $arrbo_table, "새글", 10);



이렇게 작성하여 notice, Testimony 게시판 글중에서 최신글 10개만 뽑아 오려고 하는데 

왜 안되는지 모르겠어요 도움 부탁드립니다.


이렇게 하면 아무것도 나타나지 않습니다.


echo latest('basic', notice, 10, 50); <- 이런씩으로 1개의 게시판 최근글은 잘 불러와집니다. 

이 질문에 댓글 쓰기 :

답변 2

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 129,406
© SIRSOFT
현재 페이지 제일 처음으로