최신글에 관리자 아이디 출력하기

최신글에 관리자 아이디 출력하기

QA

최신글에 관리자 아이디 출력하기

본문

latest.skin.php에서 아래와 같이 

최신글을 출력해주면서 

해당글의 게시판관리자 아이디를 출력하고자 하는데

가장 마지막에 출력된 관리자아이디로만 도배가 되는데 

어떻게 해야하나요?


    <?php for ($i=0; $i<count($list); $i++) {  ?>
.
.
.
        <?php 
        $mb = get_member($board['bo_admin']);
        echo $mb['mb_id'];
        ?>
 

이 질문에 댓글 쓰기 :

답변 4

sql문을 넣어서 하면 나오기는 할텐데 이상하네요

잘못된 부분 아래 두가지를고치세요

1. $board['bo_admin']이 관리자 아이디인데 get_member로 아이디를 다시 찾아서 출력하는 이유는??

2. 게시판관리자가 게시물 마다 다른것이 아닌데 for문안에 넣는 이유는???

 

 

for문 위쪽에 아래코드를 넣으세요

if(!$board['bo_admin']){
  $board=sql_fetch( " select * from {$g5['board_table']} where bo_table = '{$bo_table}' ");
}

 

출력을 원하는 곳에 아래처럼 넣으세요

<?php echo $board['bo_admin'];?>

 

답변감사합니다.
로그인한 회원이 쓴글을 모든게시판들에서 최신순으로 최신게시글스킨에 가져오는 겁니다. 
그래서 글마다 해당게시판의 관리자는 다 다르고요.


<?php
if (!defined('_GNUBOARD_')) exit;

// 최신글 추출
// $cache_time 캐시 갱신시간
// 전체게시물 최신글 추출 by 벌이뉨 2018.05.23 
function latest_all($skin_dir='', $subject='', $rows=10, $subject_len=40, $sub_table='', $cache_time=1, $options='')
{
    global $g5;

    if (!$skin_dir) $skin_dir = 'basic';
    if(!$options) $options_cache = 'basic'; else $options_cache = $options;
    $options_cache = str_replace(array(" ","'"), array("",""), $options_cache);

    $not_in = ""; 
    if($sub_table!=''){
    	foreach ($sub_table as $key => $val) {
    		$not_in .= "'$val',";
    		$not_cache .= "{$val}";
    	}
    }else{
    	$not_cache = 'basic';
    }
    $not_in .= "'1'";    
    

    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;
        }
    }

    $cache_fwrite = false;
    if(G5_USE_CACHE) {
        $cache_file = G5_DATA_PATH."/cache/latest-all-{$skin_dir}-{$rows}-{$subject_len}-{$not_cache}-{$options_cache}-serial.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) {
                try{
                    $file_contents = file_get_contents($cache_file);
                    $file_ex = explode("\n\n", $file_contents);
                    $caches = unserialize(base64_decode($file_ex[1]));

                    $list = (is_array($caches) && isset($caches['list'])) ? $caches['list'] : array();
                    $bo_subject = (is_array($caches) && isset($caches['bo_subject'])) ? $caches['bo_subject'] : '';
                    $bo_table = (is_array($caches) && isset($caches['bo_table'])) ? $caches['bo_table'] : 'free';
                } catch(Exception $e){
                    $cache_fwrite = true;
                    $list = array();
                }
            }
        }
    }

    if(!G5_USE_CACHE || $cache_fwrite) {
    	
        $list = array();
        $board = array();
        $bo_subject = $subject;
		$sql = " select * from {$g5['board_table']} where bo_table not in({$not_in})";
		$bo = sql_query($sql);
		
		
		$sql = " select * from (";
		$brow = sql_fetch_array($bo);
			
		$board[$brow['bo_table']] = $brow; 
		
		$sql_union .= "
					select
						*,
						'{$brow['bo_subject']}' bo_subject,
						'{$brow['bo_table']}' bo_table
					from {$g5['write_prefix']}{$brow['bo_table']}";
		
		for ($i=0; $brow = sql_fetch_array($bo); $i++) {
			$board[$brow['bo_table']] = $brow;
			$sql_union .= "
						union all
						select 
							*, 
							'{$brow['bo_subject']}' bo_subject, 
							'{$brow['bo_table']}' bo_table 
						from {$g5['write_prefix']}{$brow['bo_table']}";
		}
		
		$sql .= "{$sql_union}) X where {$options} wr_is_comment = 0 order by wr_datetime desc limit 0, {$rows}";
        $result = sql_query($sql);
        
		for ($i=0; $row = sql_fetch_array($result); $i++) {
            try {
                unset($row['wr_password']);     //패스워드 저장 안함( 아예 삭제 )
            } catch (Exception $e) {
            }
            
            $row['wr_email'] = '';              //이메일 저장 안함
            if (strstr($row['wr_option'], 'secret')){           // 비밀글일 경우 내용, 링크, 파일 저장 안함
                $row['wr_content'] = $row['wr_link1'] = $row['wr_link2'] = '';
                $row['file'] = array('count'=>0);
            }
            $row['wr_subject'] = "[{$row['bo_subject']}] {$row['wr_subject']}";
            
            if($i==0) $bo_table = $row['bo_table'];
            	
            $list[$i] = get_list($row, $board[$row['bo_table']], $latest_skin_url, $subject_len);
        }

        if($cache_fwrite) {
            $handle = fopen($cache_file, 'w');
            $caches = array(
                'list' => $list,
                'bo_subject' => sql_escape_string($bo_subject),
            	'bo_table' => sql_escape_string($bo_table),
  


<?php
        $sql = " select * from {$g5['board_table']} where bo_table = '{$bo_table}' ";
        $board = sql_fetch($sql); 
        $mb = get_member($board['bo_admin']);
        echo $mb['mb_id'];
?>

이렇게 해봐도 안됩니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 0 | RSS
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

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