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

그누보드 회원이름 변경 후 데이터 출력 채택완료

굿디그누 2년 전 조회 1,401

https://sir.kr/g5_tip/4372

 

을 통해 이름을 바꿨는데요

(설정한 등급이름)OO님 안녕하세요 이렇게 출력하고싶은데

데이터를 어떻게 가져와야할까요?

 

<?pho echo $userName ?> 라고 출력하면 아무값이 나오지 않습니다

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

답변 3개

채택된 답변
+20 포인트
플라이
2년 전

admin.lib.php 말고 저 부분을 커스텀하셔서 적용하셔야 하는데요

 

common.lib.php에 선언하셔서

 

</p>

<p>// 레벨명

function get_member_level_name($level)

{

switch ($level)

{

case 1 : $userName = "비회원"; break;

case 2 : $userName = "일반회원"; break;

case 3 : $userName = "업체회원"; break;

case 10 : $userName = "관리자"; break;

default : $userName = ""; break;

}

return $userName;

}</p>

<p>

 

이렇게 고쳐 적용해 주시면 되실듯 합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 8개

굿디그누
2년 전
common.lip.php 에 제일 하단에 새로 정의하고
출력하고 싶은 부분에 <?php echo $userName ?> 으로 출력하면 나오지 않습니다ㅠㅠ
당연히안될것 같으면서 방법을 모르겠네요 ㅠㅠ
플라이
2년 전
$userLevelNm = get_member_level_name($mb['mb_level']);

echo $userLevelNm; 을 해야 표기가 가능한 부분입니다.
굿디그누
2년 전
답변감사합니다!!!
$userLevelNm = get_member_level_name($mb['mb_level']);
선언을 어디다가 해줘야할까요? common.lib에 정의한 함수 밑에 정의 후 제가 원하는 곳에 에코로 출력. 잘 안되네요..ㅠㅠ

데이터를 정의하고 가져오는 개념이 없어서 어렵숩니다...ㅠㅠ 너무 감사합니다
굿디그누
2년 전
제가 원하는 태그가 있는 php 파일 상단에 변수를 선언해도 안되네요! ㅠㅠ
플라이
2년 전
function get_member_level_name($level)
이건 common.lib.php 파일에 선언해 주시고요

해당 반영할 페이지가 common.php 가 인클루드 되어 있어야 하며

그 하단에 출력해서 로그인되어 있는 상태인 경우

$userLevelNm = get_member_level_name($mb['mb_level']);

echo userLevelNm; 으로 하시면 출력되실 겁니다.
굿디그누
2년 전
감사합니다 원하는페이지에 common.lib 인클루드 후 변수 선언하고 출력 했습니다.
값은 여전히 나오지 않네요 ㅠㅠ
플라이
2년 전
해당 체크하는 레벨이 몇인지 모르지만 지금은 레벨이 1,2,3,10레벨만 선언 되어 있고 나머지는 빈값으로 나오니 확인해 보세요
굿디그누
2년 전
오...감사합니다... common.lib에서 받아오는 $level값에
$mb['mb_level']을 넣으니 안되고
$member['mb_level'] 를 넣으니까 되네요!!! 꼼꼼히 살펴보니 조금 알게되었습니다 너무 감사합니다!!

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

굿

자세히 설명을 못드렸네요 ㅠㅠ

admin.lib.php 에 이렇게 변경을 했고

관리자 메뉴에서 회원 등급변경할 때 제가 정한 이름으로 바꿀 수 있습니다.

 

문제는 이렇게 변경한 레벨이름을 제가 원하는 태그안에서 출력을 하고싶은데요

admin.lib에서 $userName변수를 정의하는데 제가 원하는 페이지에서 어떻게 가져오는 지 궁금합니다!

</p>

<p>// 회원권한을 SELECT 형식으로 얻음</p>

<p>function get_member_level_select($name, $start_id = 0, $end_id = 10, $selected = "", $event = "")</p>

<p>{</p>

<p>    global $g5;</p>

<p>    $str = "\n<select id=\"{$name}\" name=\"{$name}\"";</p>

<p>    if ($event) $str .= " $event";</p>

<p>    $str .= ">\n";</p>

<p> </p>

<p>    for ($i=$start_id; $i<=$end_id; $i++) {</p>

<p>  switch ($i)</p>

<p> {</p>

<p>  case 2 : $userName = "정회원"; break;</p>

<p>  case 3 : $userName = "동문"; break;</p>

<p>  case 9 : $userName = "임원"; break;</p>

<p>  case 10 : $userName = "관리자"; break;</p>

<p>  default : $userName = ""; break;</p>

<p> }</p>

<p> </p>

<p>  if ($userName)</p>

<p>  {</p>

<p>   $str .= '<option value="'.$i.'"';</p>

<p>   if ($i == $selected)</p>

<p>    $str .= ' selected="selected"';</p>

<p>   $str .= ">{$userName}</option>\n";</p>

<p>  }</p>

<p>    }</p>

<p>    $str .= "</select>\n";</p>

<p>    return $str;</p>

<p>}</p>

<p>

로그인 후 평가할 수 있습니다

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

e
2년 전

$level_arr = array(1=>'비회원', 2=>'일반회워', 3=>'업체회원', 10=>'관리자');

이렇게 위에 선언을 하고.. 아래와 같이 출력하세요.

<?php echo $level_arr[$mb['mb_level']] ?>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 4개

굿디그누
2년 전
제가 출력할 태그가 있는 php파일 안에서
위에 선언을 하고 출력태그를 넣으니 잘 출력이 안되네요 ㅠㅠ
e
eyekiss
2년 전
여러 페이지에서 사용하는거면..
$level_arr 배열을
/extend/user.config.php 파일에 추가해주시면 됩니다.

출력을 원하는 페이지를 알려주세요..
페이지별로 회원 레벨을 불러오는 부분이 다릅니다.
위의 로그인한 회원의 등급을 표시한 겁니다.
굿디그누
2년 전
원하는 페이지는 outlogin.skin.2.php입니다!
너무감사합니다
e
eyekiss
2년 전
상단에 아래 소스 추가..
$mb = get_member($mb_id);

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

답변을 작성하려면 로그인이 필요합니다.

로그인