회원등급(레벨)을 숫자가 아닌 한글(텍스트)로 보기 (2022-10-22 18:56 수정) 정보
회원등급(레벨)을 숫자가 아닌 한글(텍스트)로 보기 (2022-10-22 18:56 수정)본문
[주] 이후 강좌수정내용의 업데이트가 안될수 있습니다.
본 강좌의 최신업데이트는 https://www.happyjung.com/lecture/2795 에서 확인가능합니다.
가급적 동일한 내용을 유지하려고 노력하지만, 우선 작업은 위 링크입니다.
회원등급(레벨) 1 ~ 10을 한글(텍스트)로 치환해서 보여주는 방법입니다.
회원권한을 select 형식으로 보여주는 것은
adm / admin.iib.php 의 get_member_level_select 함수가 그 역할을 합니다
그누보드5 / adm / admin.lib.php 에서 get_member_level_select 함수 내용을 살펴보면 다음과 같습니다
// 회원권한을 SELECT 형식으로 얻음
function get_member_level_select($name, $start_id=0, $end_id=10, $selected="", $event="")
{
global $g5;
$str = "\n<select id=\"{$name}\" name=\"{$name}\"";
if ($event) $str .= " $event";
$str .= ">\n";
for ($i=$start_id; $i<=$end_id; $i++) {
$str .= '<option value="'.$i.'"';
if ($i == $selected)
$str .= ' selected="selected"';
$str .= ">{$i}</option>\n";
}
$str .= "</select>\n";
return $str;
}
위 내용을 참고해서 레벨을 한글로 보여주는 함수를 새로 만듭니다
1. extend / user.config.php 에 아래와 같이 추가합니다
// adm / admin.lib.php 의 get_member_level_select 함수를 변형해서 새로 만든 함수입니다
// 회원권한을 SELECT 형식으로 얻음
if (!function_exists('get_member_level_select_name')) {
function get_member_level_select_name($name, $start_id=0, $end_id=10, $selected='', $event='')
{
global $g5;
//$level_name = array('없음','비회원','-','직원','-','매장','-','본사','8','9','하존'); // 레벨이름정의
$str = "\n<select id=\"{$name}\" name=\"{$name}\"";
if ($event) $str .= " {$event}";
$str .= ">\n";
for ($i=$start_id; $i<=$end_id; $i++) {
if($i == 1) $imsg = "비회원"; // 1
elseif($i == 2) $imsg = "레벨2"; // 2
elseif($i == 3) $imsg = "레벨3"; // 3
elseif($i == 4) $imsg = "레벨4"; // 4
elseif($i == 5) $imsg = "레벨5"; // 5
elseif($i == 6) $imsg = "레벨6"; // 6
elseif($i == 7) $imsg = "레벨7"; // 7
elseif($i == 8) $imsg = "레벨8"; // 8
elseif($i == 9) $imsg = "레벨9"; // 9
elseif($i == 10) $imsg = "레벨10"; // 10
$str .= "<option value=\"{$i}\"";
if ($i == $selected)
$str .= " selected=\"selected\"";
$str .= ">{$imsg}</option>\n";
}
$str .= "</select>\n";
return $str;
}
}
2. 함수 적용하기
숫자로 표시될 select 는 기존 함수 사용
<?php echo get_member_level_select("mb_level[{$i}]", 1, $member['mb_level'], $row['mb_level']) ?>
한글로 표시될 select 는 새로 만든 함수 사용
<?php echo get_member_level_select_name("mb_level[{$i}]", 1, $member['mb_level'], $row['mb_level']) ?>
8