레벨 포인트 증가 여기서 어떻게 수정할까요?

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
레벨 포인트 증가 여기서 어떻게 수정할까요?

QA

레벨 포인트 증가 여기서 어떻게 수정할까요?

본문

포인트 받으면 레벨 아이콘 변경시키는거 하는중인데

일단 노가다로 하나씩 넣는 방법을 택했습니다.

다른거 해봤는데 필요 포인트가 점점 늘어가는게 안먹혀서요..

 

아래 코드를 넣엇는데 레벨 2까지는 2100되니까 변했는데

그 이상부터는 얼마를 넣어도 변하질 않네요...

 

[코드]

 

// 포인트별 아이콘 부여 
function get_level_icon($mb_id) { 
    global $g5;     
    $max_level = 450; // 마지막레벨 
    
    $mb = get_member($mb_id, "mb_id, mb_point"); 
    $ic_mb_id = $mb['mb_id']; 
    $is_admin = is_admin($ic_mb_id); 
    if ($ic_mb_id) {         
        if ($is_admin == 'super') { 
            $mb_icon = "<img src='".G5_IMG_URL."/level/g.gif' align='absmiddle' title='관리자'>";         
        } else { 
            $mb_point = $mb['mb_point']; 
            
            //if ($mb_point <= 1000) 
            if ($mb_point < 2100) 
                $mb_level = 1;
            else if ($mb_point >= 2100)
                $mb_level = 2;
            else if ($mb_point >= 3300)
                $mb_level = 3;
            else if ($mb_point >= 4600)
                $mb_level = 4;
            else if ($mb_point >= 6000)
                $mb_level = 5;
    
            $level = ($mb_level > $max_level) ? $max_level : $mb_level;
            $mb_icon = "<img src='".G5_IMG_URL."/level/".$level.".gif' align='absmiddle' title='포인트레벨 ".$level."".number_format($mb_point)."점'>"; 
        } 
        
    } 
   else { 
        // 비회원 
        $mb_icon = "<img src='".G5_IMG_URL."/level/0.gif' align='absmiddle' title='손님'>"; 
    } 
    return $mb_icon; 
    //echo $mb_icon; 

?> 

[코드]

이 질문에 댓글 쓰기 :

답변 2

안녕하세요.

아래의 코드를 한번 참고해 보시겠어요~

 

// 포인트별 아이콘 부여 
function get_level_icon($mb_id) { 
    global $g5;     
    $max_level = 450; // 마지막레벨 
    
    $mb = get_member($mb_id, "mb_id, mb_point"); 
    $ic_mb_id = $mb['mb_id']; 
    $is_admin = is_admin($ic_mb_id); 
    if ($ic_mb_id) {         
        if ($is_admin == 'super') { 
            $mb_icon = "<img src='".G5_IMG_URL."/level/g.gif' align='absmiddle' title='관리자'>";         
        } else { 
            $mb_point = $mb['mb_point']; 

            // 포인트가 가장 높은 조건부터 체크
            if ($mb_point >= 6000)
                $mb_level = 5;
            else if ($mb_point >= 4600)
                $mb_level = 4;
            else if ($mb_point >= 3300)
                $mb_level = 3;
            else if ($mb_point >= 2100)
                $mb_level = 2;
            else 
                $mb_level = 1;
    
            $level = ($mb_level > $max_level) ? $max_level : $mb_level;
            $mb_icon = "<img src='".G5_IMG_URL."/level/".$level.".gif' align='absmiddle' title='포인트레벨 ".$level."".number_format($mb_point)."점'>"; 
        } 
        
    } 
   else { 
        // 비회원 
        $mb_icon = "<img src='".G5_IMG_URL."/level/0.gif' align='absmiddle' title='손님'>"; 
    } 
    return $mb_icon; 
    //echo $mb_icon; 

 

높은순으로 해야지 되는 이유는 if문에서 이미 5000점이라면 2000점이 넘어서 아래 조건을 가지를 않습니다. 해당 같은 경우에는 제이앤님 말씀 처럼 높은 순으로 하시면 됩니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 124,263 | RSS
QA 내용 검색

회원로그인

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