테스트 사이트 - 개발 중인 베타 버전입니다

아웃로그인 경험치바 질문드립니당~

· 12년 전 · 929
<? // 자동레벨업/다운 및 경험치바 적용
$point_level = array(); // 레벨별 포인트값을 저장할 배열변수 선언
##################################################################################################
# 편리한 사용을 위한 설정 모음 #
##################################################################################################

// 최고레벨 설정 (주의 : admin 레벨은 절대 포함하지마세요!)
$max_level = 21;

// 레벨당 획득 경험치가 일정한 경우 true 아닌경우 false
$lv_point = false;

// 1레벨당 최고 포인트 증가량 일정치
$lvup_point = 200;

// 포인트 증가값이 일정치 않을 경우 하단과 같이 따로 설정
// $max_level 에 설정한 갯수 만큼 설정
$point_level[2] = 5000;
$point_level[3] = 100000;
$point_level[4] = 200000;
$point_level[5] = 400000;
$point_level[6] = 600000;
$point_level[7] = 1000000;
$point_level[8] = 1500000;
$point_level[9] = 2000000;
$point_level[10] = 3000000;
$point_level[11] = 5000000;
$point_level[12] = 10000000;
$point_level[13] = 20000000;
$point_level[14] = 30000000;
$point_level[15] = 50000000;
$point_level[16] = 100000000;
$point_level[17] = 200000000;
$point_level[18] = 300000000;
$point_level[19] = 400000000;
$point_level[20] = 500000000;
$point_level[21] = 600000000;

// 경험치량 표시할 소수점 자리수 설정
$decimal = 0;

/*********************************************************/
// 경험치바 색상 설정
$expbar_border = "#737373"; // 테두리색
$expbar_bg = "#edeeef"; // 배경색
$expbar_light = "#bec5ca"; // 경험치바 밝은색
$expbar_dark = "#a5abb0"; // 경험치바 어두운색
/*********************************************************/

##################################################################################################
# 편리한 사용을 위한 설정 모음 끝 #
##################################################################################################
?>

<!-- 레벨업 메세지 -->
<script language="JavaScript">
function level_up(level){
// 레벨 업시 메세지
alert("Lv."+level+"(으)로 레벨업! 축하합니다.");
window.location.reload();
}

function level_down(level){
// 레벨 다운시 메세지
alert("Lv."+level+"(으)로 레벨다운;;");
window.location.reload();
}
</script>

<?

if (!$is_admin){ // 최고관리자는 체크하지 않음

$exp = 0; // 경험치를 저장할 변수 초기화

// 레벨별 최고 경험치 설정
if ($lv_point){
for ($i = 0;$i < $max_level;$i++){
$point_level[$i+1] = $point_level[$i] + $lvup_point; // 1레벨당 lvup_point만큼 point씩 증가
}
}

// 최대 포인트 설정 (최대 포인트 이상 포인트가 넘어갈시 경험치바 오류방지)
$max_point = $point_level[$max_level];

// 현재 point 를 체크하여 자동 레벨업 시킴
/*
자신의 현재레벨 max point와 비교하여 현재 point가 현재레벨 max point 보다 높거나
이전레벨 max point와 비교하여 현재 point가 이전레벨 max point 보다 낮고
최고 레벨이 아닌경우에만 레벨업(다운) 적용
*/
if (($point_level[$member[mb_level]] < $member[mb_9] ||
$point_level[$member[mb_level]-1] > $member[mb_9]) &&
$member[mb_level]!=$max_level){
$now_level = $member[mb_level]; // 현재 포인트에 해당하는 레벨을 저장할 변수 현재 레벨로 초기화

for($i=0;$i < $max_level;$i++){ // 현재 포인트에 해당하는 레벨 구하기
if ($member[mb_9] < $point_level[$i+1]){
$now_level = $i+1;
break;
}
}

if ($member[mb_9] > $point_level[$max_level]){ // 현재 포인트가 max level point 보다 높다면 최고레벨로 지정
$now_level = $max_level;
}

// 회원레벨 업데이트
$sql = " update $g4[member_table] set mb_level = '$now_level' where mb_id = '$member[mb_id]' ";
sql_query($sql);

if ($member[mb_level] < $now_level){ //레벨이 올랐을때
echo "<script language='JavaScript'>level_up(".$now_level.");</script>";
} else { // 레벨이 떨어졌을때
echo "<script language='JavaScript'>level_down(".$now_level.");</script>";
}
}

// 레벨이 존재하지 않을 경우 오류 출력
//if (!$member[mb_level]) alert("정상적으로 접근하여 주시기 바랍니다.");

// 현재 레벨에 얻어야할 max point / 현재까지 획득한 point 계산
if ($member[mb_level]!= "1"){ // 1레벨일경우 이전 레벨이 없기 때문에 현재 포인트로 계산
$max_exp = $point_level[$member[mb_level]]-$point_level[$member[mb_level]-1]; // max point
$acquire_point = $member[mb_9] - $point_level[$member[mb_level]-1]; // 획득 point
} else { // 1레벨일 경우 처리
$max_exp = $point_level[1];
$acquire_point = $member[mb_9];
}

if ($max_point<$member[mb_9]){ //
$max_exp = $max_point;
$acquire_point = $member[mb_9];
}

// 현재 경험치 계산 %(퍼센트)로 계산
$exp = number_format($acquire_point / $max_exp * 100,$decimal);

// 경험치바 크기 조정 (100%가 넘을시에는 %는 그대로 출력 게이지바는 100%로 고정
if($exp>100) $exp_bar = 100;
else $exp_bar = $exp;
}
?>

아웃로그인 경험치바 표시되는 스킨을 쓰구있는데요.

작동은 잘되는데 궁금한건...

저 경험치바를 로그인창이 아닌 게시판 view 페이지 하단에 넣고싶은데요

출력이되긴하나 글작성자가 아닌 글을 보고있는 사람의 경험치로 나오더라구요.

글작성자의 경험치를 보려면 어디를 수정해야하는지 고수님들 좀 도와주시면 감사하겠습니당

ㅜㅜ

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
284348
284336
284333
284332
284320
284318
284316
284313
284307
284306
284303
284298
284296
284290
284286
284280
284277
284272
284261
284259