Q & A

질답게시판

홈 > 회원포럼 > 질답/버그/제안
질답/버그/제안

골드(3)등급 등업 메시지

5 나이스핸섬 3 65

회원 레벨 10이 된 이후부터 [축하합니다! 골드(3)등급으로 등업하였습니다.] 팝업 메시지가 페이지를 이동할때마다 

계속 나와서 홈페이지 이용에 불편함이 있습니다. 

 

레벨 업될때 메시지 한번만 뜨게 하려면 어디를 고쳐야 할까요?

<?php

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


//Level Up

if($member['mb_id']) { 

//Auto Grade

if($xp['xp_from'] > 1 && $xp['xp_to'] >= $xp['xp_from']) {

if($member['mb_level'] >= $xp['xp_from'] && $member['mb_level'] <= $xp['xp_to']) {

$level = $member['mb_level'];

$n = 1;

for($i = $xp['xp_from']; $i <= $xp['xp_to']; $i++) {

$g = 'xp_auto'.$n;

if($member['as_level'] < $xp[$g]) {

$level = $i;

break;

}

$n++;

}


if($level == $member['mb_level']) {

;

} else {

$member['as_msg'] = ($member['mb_level'] > $level) ? 4 : 3; //3 : 등업, 4 : 다운

$member['mb_level'] = $level;

}

}

}


switch($member['as_msg']) { //Message

case '1' : //레벨업

$levelup_msg = aslang('alert', 'level_up', array($member['as_level'])); 

break;

case '2' : //레벨다운

$levelup_msg = aslang('alert', 'level_down', array($member['as_level']));

break;

case '3' : //등업

$mg = 'xp_grade'.$member['mb_level']; 

$levelup_msg = aslang('alert', 'grade_up', array($xp[$mg], $member['mb_level'])); 

break;

case '4' : //등급다운

$mg = 'xp_grade'.$member['mb_level']; 

$levelup_msg = aslang('alert', 'grade_down', array($xp[$mg], $member['mb_level'])); 

break;

}


if($member['as_msg']) {

// 회원정보 업데이트

sql_query(" update {$g5['member_table']} set mb_level = '{$member['mb_level']}', as_msg = '0' where mb_id = '{$member['mb_id']}' ", false);


// 회원자료 업데이트

change_xp($member['mb_id'], $member['as_level']);


echo "<script> alert('".$levelup_msg."');</script>";

}

}


3 Comments
phpmyadmin에서 테이블복구를 해도 그대로 인데, 안되면 메지시를 안나오게 하고 싶습니다.
M 한별아빠 11.09 01:38  
1. 저 메시지가 계속 나온다는 것은 아래 코드가 제대로 실행안된다는 것인데...

// 회원정보 업데이트
sql_query(" update {$g5['member_table']} set mb_level = '{$member['mb_level']}', as_msg = '0' where mb_id = '{$member['mb_id']}' ", false);

즉, 회원DB 테이블 깨졌던가 다른 문제가 있다는 것이고, 이건 달리 말하는 회원정보 업데이트 관련해서 자료 갱신이 안될 수 있다는 것이라...ㅠㅠ

2. 메시지 출력안되는 것이야 echo "<script> alert('".$levelup_msg."');</script>"; 부분 지워주면 되는데, 아마 앞서 적어 드린 쿼리구문도 지우셔야 할 것입니다. 계속 작동할테니...
항상 친절한 답변 감사드립니다.^^
제목
최근 글
최근 댓글
Facebook Twitter GooglePlus KakaoStory KakaoTalk NaverBand