최근게시글 글쓴이 레벨표시

최근게시글 글쓴이 레벨표시

QA

최근게시글 글쓴이 레벨표시

본문

최근게시글에 글쓴이를 표시해주었는데요.

레벨도 표시해주고 싶은데

음...

<span class=name>$row[mb_id] 레벨:$member[mb_level]</span> 

 

요건 내가 로그인했을때의 레벨이 나오는것같고.

음... 글쓴이들의 레벨을 표시해주는 방법이 있을까요?

아시는분 도움부탁드립니당

이 질문에 댓글 쓰기 :

답변 2


for ($i=0; $row = sql_fetch_array($result); $i++) {
    $list[$i] = get_list($row, $board, $latest_skin_url, $subject_len);
    $mem = get_member($list[$i]['mb_id'], "mb_level");
    $list[$i]['mb_level'] = $mem['mb_level'];
}

/lib/latest.lib.php 파일에 보시면 for로 시작하는 부분에 저 두 줄 추가하시면 될 것 같네요.

그리고 스킨 파일에서 $list[$i]['mb_level']로 호출하면 됩니다. 

캐쉬 끄고 하신 거 맞죠?
config.php 파일 열어 보시면
define('G5_USE_CACHE',  true); // 최신글등에 cache 기능 사용 여부
여기가 true로 되어 있으면 false로 바꾸고 테스트 하셔야 합니다.
http://jjiniyam.cafe24.com/
여기 보시면 제가 테스트로 찍은 게 나옵니다.

캐쉬 false로 되어 있습니다.
흠... 제 생각엔 제가 사용을 잘 못한것 같아요.
 
$list[$i]['mb_level']
로 하라고 알려주셨는데
따옴표넣으면 안나오더라구요.
그래서
레벨:$list[$i][mb_level]
이렇게 넣은거거든요.

메인화면에 그룹회원들 뿌려주는 거 만들고 있거든요.
그래서 뿌려주는 부분만 쓰자면 아래와 같은데 저 밑에 '레벨:'이 그부분입니다.
제가 잘못 쓴거 맞죠? ^^

<?php
$sql = "select mb_id FROM {$g5['member_table']}";
$result= sql_query($sql);
while($row = sql_fetch_array($result)){
$mb_profile_img_path = G5_DATA_PATH."/member/profile_img/".$row[mb_id].".jpg";


if(file_exists($mb_profile_img_path)) {
    $mb_profile_img_url = G5_DATA_URL."/member/profile_img/".$row[mb_id].".jpg";
} else {  // 프로필 이미지가 없으면 기본 이미지를 보여준다.
    $mb_profile_img_url = G5_IMG_URL."/no_profile_image.jpg";
}$img_result .= "<a href='".G5_BBS_URL."/board.php?bo_table=".$row['mb_id']."'>
<img src=$mb_profile_img_url class=mbavatar><span class=name>$row[mb_id] 레벨:$list[$i]['mb_level']</span>
</a>";
}
 
echo $img_result  ;
?>

코딩을 어떻게 하셨는지 모르겠지만 따옴표를 넣으면 안 된다는 걸 보면 변수들도 전부 따옴표 안에 넣으셨나 봅니다.
echo "<span class='name'>".$row['mb_id']." 레벨 : ".$list[$i]['mb_level']."</span>";
사용을 어떻게 하셨는지 모르겠지만 일단 제가 테스트로 한 페이지에서는 저렇게 했을 경우 정상적으로 나옵니다.
아니면 $mem 바로 다음 줄에 echo $mem['mb_level']; 이렇게 찍어 보세요. 값이 나오나.

이렇게 썼어요.^^;;

<?php
$sql = "select mb_id FROM {$g5['member_table']}";
$result= sql_query($sql);
while($row = sql_fetch_array($result)){
$mb_profile_img_path = G5_DATA_PATH."/member/profile_img/".$row[mb_id].".jpg";


if(file_exists($mb_profile_img_path)) {
    $mb_profile_img_url = G5_DATA_URL."/member/profile_img/".$row[mb_id].".jpg";
} else {  // 프로필 이미지가 없으면 기본 이미지를 보여준다.
    $mb_profile_img_url = G5_IMG_URL."/no_profile_image.jpg";
}$img_result .= "<a href='".G5_BBS_URL."/board.php?bo_table=".$row['mb_id']."'>
<img src=$mb_profile_img_url class=mbavatar><span class=name>$row[mb_id] 레벨:$list[$i]['mb_level']</span>
</a>";
}
 
echo $img_result  ;
?>

이거 최근 게시물 뿌리는 걸로 사용하신 거 아니죠?
latest.lib.php랑 latest.skin.php 이 두 파일 사용하시는 거 아니죠?
최근 게시물이면 기본적으로 게시물마다 작성자 아이디가 있고 그 아이디를 회원 테이블에 넣어서 현재 레벨 갖고 오게 한 건데...
지금 올리신 코드는 최근 게시물과는 좀 다르네요.
작업 중이신 파일 전체를 여기에 올려 보세요.

참고한 소스는
http://sir.kr/qa/125163?stx=%ED%9A%8C%EC%9B%90%EC%82%AC%EC%A7%84&sst=wr_num&unanswered=0&s_tag=%EA%B7%B8%EB%88%84%EB%B3%B4%EB%93%9C5

구요.

제 index.php (메인에 구현중입니다) 풀 코드는 다음과 같습니다.


<?php
include_once('./_common.php');

define("_INDEX_", TRUE);

include_once(G5_THEME_MSHOP_PATH.'/shop.head.php');
include_once(G5_LIB_PATH.'/latest_group.lib.php');
include_once(G5_LIB_PATH.'/latest.lib.php');

?>

<script src="<?php echo G5_JS_URL; ?>/swipe.js"></script>
<script src="<?php echo G5_JS_URL; ?>/shop.mobile.main.js"></script>

<div class="mainmember">

<h3>전체회원사진</h3>
<?php
$sql = "select mb_id FROM {$g5['member_table']}";
$result= sql_query($sql);
while($row = sql_fetch_array($result)){
$mb_profile_img_path = G5_DATA_PATH."/member/profile_img/".$row[mb_id].".jpg";


if(file_exists($mb_profile_img_path)) {
    $mb_profile_img_url = G5_DATA_URL."/member/profile_img/".$row[mb_id].".jpg";
} else {  // 프로필 이미지가 없으면 기본 이미지를 보여준다.
    $mb_profile_img_url = G5_IMG_URL."/no_profile_image.jpg";
}$img_result .= "<a href='".G5_BBS_URL."/board.php?bo_table=".$row['mb_id']."'>
<img src=$mb_profile_img_url class=mbavatar><span class=name>$row[mb_id]레벨:$list[$i][mb_level]</span>
</a>";
}
 
echo $img_result  ;
?>

</div>


<?php
include_once(G5_THEME_MSHOP_PATH.'/shop.tail.php');
?>

최근 게시물이 아니네요. ㅠ
최근 게시글이라는 말에 당연히 저걸 사용하셨을 거라 생각했는데...
$sql = "select mb_id, mb_level FROM {$g5['member_table']}";
이렇게 바꾸시고 밑에서 $row[mb_level] 찍으시면 나올 겁니다.

테마비사용시 skin > latest > basic > latest.skin.php 를 수정해서

테마사용시 theme > basic > skin > latest > basic > latest.skin.php 를 수정해서 아래와 같이 해주세요.

<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.$latest_skin_url.'/style.css">', 0);
?>

<!-- <?php echo $bo_subject; ?> 최신글 시작 { -->
<div class="lt">
    <strong class="lt_title"><a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=<?php echo $bo_table ?>"><?php echo $bo_subject; ?></a></strong>
    <ul>
    <?php for ($i=0; $i<count($list); $i++) {  ?>
        <li>
            <?php
            //echo $list[$i]['icon_reply']." ";
            echo "<a href=\"".$list[$i]['href']."\">";
            if ($list[$i]['is_notice'])
                echo "<strong>".$list[$i]['subject']."</strong>";
            else
                echo $list[$i]['subject'];    

            if ($list[$i]['comment_cnt'])
                echo $list[$i]['comment_cnt'];

            echo "</a>";

            // if ($list[$i]['link']['count']) { echo "[{$list[$i]['link']['count']}]"; }
            // if ($list[$i]['file']['count']) { echo "<{$list[$i]['file']['count']}>"; }

            if (isset($list[$i]['icon_new'])) echo " " . $list[$i]['icon_new'];
            if (isset($list[$i]['icon_hot'])) echo " " . $list[$i]['icon_hot'];
            if (isset($list[$i]['icon_file'])) echo " " . $list[$i]['icon_file'];
            if (isset($list[$i]['icon_link'])) echo " " . $list[$i]['icon_link'];
            if (isset($list[$i]['icon_secret'])) echo " " . $list[$i]['icon_secret'];
             ?>
    <?php echo $list[$i]['mb_id'] ?> 레벨:
    <?php $mem = get_member($list[$i]['mb_id'], "mb_level"); ?>
    <?php $list[$i]['mb_level'] = $mem['mb_level']; ?>
    <?php echo $list[$i]['mb_level'] ?>
        </li>
    <?php }  ?>
    <?php if (count($list) == 0) { //게시물이 없을 때  ?>
    <li>게시물이 없습니다.</li>
    <?php }  ?>
    </ul>
    <div class="lt_more"><a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=<?php echo $bo_table ?>"><span class="sound_only"><?php echo $bo_subject ?></span>더보기</a></div>
</div>
<!-- } <?php echo $bo_subject; ?> 최신글 끝 -->

 

그리고 사용하실 때는 <?php echo latest('basic', 'free', 5, 30); ?> 와 같은 형태로 해주세요.

 

답변을 작성하시기 전에 로그인 해주세요.
전체 4

회원로그인

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