포인트별 회원등급 및 레벨아이콘 변동 설정요.. > 그누4 질문답변

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

포인트별 회원등급 및 레벨아이콘 변동 설정요.. 정보

포인트별 회원등급 및 레벨아이콘 변동 설정요..

본문

포인트가 차감되도 회원등급 및 레벨아이콘을 유지하게 하고 싶습니다.

포인트랭킹 스킨을 다른걸 쓰면서 기존에 있던 extend/extend.level.php 파일을 쓸 수 없게되면서
기존 팁으론 수정이 어렵게 됐네요.

현재 회원레벨과 레벨아이콘을 자동으로 획득하게 해둔 상태인데요.
회원레벨과 레벨아이콘에 설정에 직접 적용되고 있는 소스 입니다.
레벨과 아이콘을 유지할 수 있게 소스 추가가 가능할까요?


자동등업소스는 /lib/common.lib.php  865줄
=========================================

//자동등업 추가
	if( $sum_point <= 100){ $mb_level = 1; }
	if( $sum_point >= 100){ $mb_level = 1; }
    if( $sum_point >= 200){ $mb_level = 2; } 
    if( $sum_point >= 3000){ $mb_level = 3; }
    if( $sum_point >= 1000000){ $mb_level = 10; }
    
    $sql = " update $g4[member_table] set mb_level = '$mb_level' where mb_id = '$mb_id' "; 
    sql_query($sql);

    return 1;
}

=======================================================================================
=======================================================================================
=======================================================================================




자동 레벨아이콘지정 소스는 extend/developer.lib (extend.level.php 파일을 대체한 파일)
=======================================================================================

<?
if (!defined('_GNUBOARD_')) exit;
function level_icon($mb_id) {

global $config, $group, $g4, $cate_id, $group_id, $cate_id, $ct_id, $member, $bo_table, $gr_id; $g4;

$sql = "select mb_point, mb_level, mb_id from $g4[member_table] where mb_id='$mb_id'";
$result = sql_query($sql);
$data = sql_fetch_array($result);

$is_admin = is_admin($mb_id); /*관리자 전용 아이콘 출력*/
$ic_point = $data[mb_point];
$ic_mb_id = $data[mb_id];//특정회원 지정아이콘

if($is_admin == 'super') //최고 관리자 아이콘
              {echo "<img src='$g4[path]/img/level_/admin.gif' align=absmiddle>";}
      else if(!$ic_point) //비회원 아이콘
              {echo "<img src='$g4[path]/img/level_/0.gif' align=absmiddle>";}
      else if($ic_point <= 299) //가입회원 아이콘
              {echo "<img src='$g4[path]/img/level_/1.gif' align=absmiddle>";}
      else if($ic_point <= 399)
              {echo "<img src='$g4[path]/img/level_/2.gif' align=absmiddle>";}
      else if($ic_point <= 499)
              {echo "<img src='$g4[path]/img/level_/3.gif' align=absmiddle>";}
      else if($ic_point <= 599)
              {echo "<img src='$g4[path]/img/level_/4.gif' align=absmiddle>";}
      else if($ic_point <= 699)
              {echo "<img src='$g4[path]/img/level_/5.gif' align=absmiddle>";}
      else if($ic_point <= 799)
              {echo "<img src='$g4[path]/img/level_/6.gif' align=absmiddle>";}
      else if($ic_point <= 999)
              {echo "<img src='$g4[path]/img/level_/7.gif' align=absmiddle>";}
      else if($ic_point <= 1199)
              {echo "<img src='$g4[path]/img/level_/8.gif' align=absmiddle>";}
      else if($ic_point <= 1399)
              {echo "<img src='$g4[path]/img/level_/9.gif' align=absmiddle>";}
      else if($ic_point <= 1599)
              {echo "<img src='$g4[path]/img/level_/10.gif' align=absmiddle>";}
      else if($ic_point <= 1799)
              {echo "<img src='$g4[path]/img/level_/11.gif' align=absmiddle>";}
      else if($ic_point <= 1999)
              {echo "<img src='$g4[path]/img/level_/12.gif' align=absmiddle>";}
      else if($ic_point <= 2199)
              {echo "<img src='$g4[path]/img/level_/13.gif' align=absmiddle>";}
      else if($ic_point <= 2999)
              {echo "<img src='$g4[path]/img/level_/14.gif' align=absmiddle>";}
      else if($ic_point <= 3999)
              {echo "<img src='$g4[path]/img/level_/15.gif' align=absmiddle>";}
      else if($ic_point <= 4999)
              {echo "<img src='$g4[path]/img/level_/16.gif' align=absmiddle>";}
      else if($ic_point <= 5999)
              {echo "<img src='$g4[path]/img/level_/17.gif' align=absmiddle>";}
      else if($ic_point <= 7999)
              {echo "<img src='$g4[path]/img/level_/18.gif' align=absmiddle>";}
      else if($ic_point <= 9999)
              {echo "<img src='$g4[path]/img/level_/19.gif' align=absmiddle>";}
      else if($ic_point <= 19999) //10000점 이상 아이콘20
              {echo "<img src='$g4[path]/img/level_/20.gif' align=absmiddle>";}			  
	  else if($ic_point >= 20000) //20000점 이상 아이콘21
              {echo "<img src='$g4[path]/img/level_/sp.gif' align=absmiddle>";}

	ob_start();
	$topmenu_skin_path = "$g4[path]/skin/topmenu/$skin_dir";
	include_once ("$topmenu_skin_path/topmenu.skin.php");
	$content = ob_get_contents();
	ob_end_clean();
}
?>

댓글 전체

간단하게 가능할꺼 같습니다.
update $g4[member_table] set mb_level = '$mb_level' where mb_id = '$mb_id' and mb_level<'$mb_level'
현재 레벨이 낮아지지 않게 update문을 수정하시고

아이콘 불러오는 if문을 point에서 level로 변경하면 될꺼 같네요.
감사합니다 레벨은 쉽게적용됐는데 아이콘은 레벨을 3단계만 운용하는상황에서 적용이가능할까요?
레벨은3등급  아이콘은 21개나 되서요
============
굳이 아이콘까지 유지시킬 필요는 없겠네요.. 그렇게 되면 쪼랩 아이콘이 상위 랭커가 되는 혼선이 있을 수 있으니까요 ㅎ
아래같이 적용해도 작동을 안하는군요...

// 포인트 내역의 합을 구하고
    $sql = " select sum(po_point) as sum_po_point from $g4[point_table] where mb_id = '$mb_id' ";
    $row = sql_fetch($sql);
    $sum_point = $row[sum_po_point];
   
    //자동등업 추가
if( $sum_point <= 0){ $mb_level = 2; }
if( $sum_point >= 1){ $mb_level = 3; }

  $sql = " update $g4[member_table] set mb_level = '$mb_level' where mb_id = '$mb_id' ";
    sql_query($sql);

    return 1;


    // 포인트 UPDATE
    $sql = " update $g4[member_table] set mb_point = '$sum_point' where mb_id = '$mb_id' ";
    sql_query($sql);

    return 1;
}
전체 66,558 |RSS
그누4 질문답변 내용 검색

회원로그인

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