포인트랭킹 페이지에서 닉네임앞에 레벨이미지를 넣고싶습니다.
본문
레벨이미지를 넣기위해 아래 소스에서 닉네임 앞부분에 <img class="m_level_img" src="<?php echo G5_IMG_URL . "/level/" . "level_" . $arr['level']; ?>.png" /> 이렇게 넣어보니
각 회원들의 레벨이미지가 아닌 제가 로그인중인 계정의 레벨이미지가 출력됩니다ㅜㅜ
어떻게 해야 유저별 레벨이미지를 불러올 수 있을까요..?
소스입니다.
<?php
include_once "./_common.php";
$sql_common = "
from {$g5['member_table']} T1 ";
$sql_search = " where (1) ";
if($stx){
$sql_search .= " and (mb_nick like '%".$stx."%') ";
}
if (!$sst) {
$sst = "mb_point ";
$sod = "desc";
}
$sql_order = " order by {$sst} {$sod} ";
$sql = " select count(*) as cnt {$sql_common} {$sql_search} {$sql_order} ";
$row = sql_fetch($sql);
$total_count = $row['cnt'];
if($rows < 1) $rows = 5;
$total_page = ceil($total_count / $rows); // 전체 페이지 계산
if ($page < 1) $page = 1; // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $rows; // 시작 열을 구함
//$sql = " select * {$sql_common} {$sql_search} {$sql_order} limit {$from_record}, {$rows} ";
$sql = " select * {$sql_common} {$sql_search} {$sql_order} limit 0, 100 ";
$result = sql_query($sql);
?>
<?php
if ($member[mb_id]){
include_once G5_LIB_PATH."/level_icon.lib.php";
$arr = get_level_icon($member['mb_id']);
?>
<?php } ?>
<table>
<tr class="rank_top">
<td class="rank_top_menu">순위</td>
<td class="rank_top_menu">닉네임</td>
<td class="rank_top_menu">포인트</td>
</tr>
<?php
$i = 0;
while($row = sql_fetch_array($result)){
if($i == 0){
$standard = $row['mb_point'];
}
$width = $row['mb_point'] / $standard * 100;
if($width > 100) $width = 100;
$i++;
?>
<tr>
<td><?php echo (($page-1) * $rows) + $i; ?>위</td>
<td><img class="m_level_img" src="<?php echo G5_IMG_URL . "/level/" . "level_" . $arr['level']; ?>.png" /><?php echo $row['mb_nick']; ?></td>
<td class="point"><span><em style="width:<?php echo sprintf("%.1f", $width); ?>%"><?php echo $row['mb_point']; ?></em></span></td>
</tr>
<?php } ?>
<?php if($i == 0){ ?>
<tr>
<td colspan="4">검색된 데이터가 업습니다.</td>
</tr>
<?php } ?>
</table>
답변 1
그누보드에서 $member 는, 현 로그인한 계정의 회원정보를 담고 있습니다.
$member['mb_id'] 는 현 로그인한 계정의 회원 ID 를 담고 있습니다.
$arr = get_level_icon($member['mb_id']);
이 코드를
while() 문 안에 이동시킨 뒤,
$arr = get_level_icon($row['mb_id']);
로 변경하면 됩니다.
<?php
$i = 0;
while($row = sql_fetch_array($result)){
$arr = get_level_icon($row['mb_id']);
~
!-->