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

회원레벨명 정하기 (DB 안 건드림)

댓글의 사노라가노라님 덕분에 문제 해결했습니다. 감사합니다^^

---------------------------------------------------------
일전에 링크로 올렸던 팁을 좀 더 보완했습니다. 관리자 여분필드1에 임의의 회원레벨명을 설정해 놓고 뽑아쓰는 팁입니다.

우선 관리자 여분필드1에 원하는 레벨명을 넣습니다.
저는 "|손님|준회원||||정회원||||우녕자" 이렇게 했습니다. (레벨1=손님, 레벨2=준회원, 레벨6=정회원, 레벨10=우녕자)
여기서 손님 앞에 공백을 하나 준 것은 배열에서 첫번째 값이 0으로 시작해서 그에 맞추느라...
그리고 아래 소스를 extend 폴더에서 사용중인 php문서에 넣고


function get_lvname($mb_id)
{
global $g4, $member, $config; // 사노라가노라님의 조언으로 $config 추가
$sql = " select * from $g4[member_table] where mb_id = '$mb_id'";
$row = sql_fetch($sql);
ob_start();
$list_lv = $config[cf_1]; ///$config여분필드1 -> |손님|준회원||||정회원||||우녕자
$u_lv = explode("|",$list_lv);

$cnt = count($u_lv);
for ($i=0;$i<$cnt;$i++)
{
if ($row[mb_level]==$i) //$i+1 하면 손님 앞에 공백 없어도 됨 (역시 사노라가노라님 조언)
{
$lvname = $u_lv[$i];
break;
}
}
echo $lvname;
$content = ob_get_contents();
ob_end_clean();
return $content;
}



원하는 곳에서 <?=get_lvname(회원아이디)?> 하면 레벨명이 나옵니다.

댓글 작성

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

로그인하기

댓글 14개

global $g4, $member, $config; // $config 추가해 보세요.

참고 :
손님 왼편 | 없는 이용을 위해
if ($row[mb_level]==$i+1) // +1 로 추가 테스트
감사합니다. 드디어 해결했네요.^^
정말 편한 팁이네요....^^

두분 수고가 많으셨습니다.
extend 폴더내의 아무 파일에나 소스 집어 넣으면 되는 건가요?

아님, 별도로 파일을 만들어 넣어야 하는지?
기존 설명서 보고 해결 완료 ^^
지구인 님, 깜박하고 고맙단 말씀을 안드렸네요. 좋은 소스 공유해주셔서 고맙습니다. ^^
<?=get_lvname($mb_id)?>
이렇게 해야 하나요?
로그인한 회원
<?=get_lvname($member[mb_id])?> 로그인한 본인의 레벨명이 보임

글쓴이(목록,최근글)
<?=get_lvname($list[$i][mb_id])?>

글쓴이(본문)
<?=get_lvname($view[mb_id])?>

이런 식으로 쓰면 됩니다. 그누보드에서 회원관련한 변수를 (괄호)안에 그대로 쓰면 된다는 거죠.
엇 이런 방법이 있다니...감사드립니다.
자기 소개에서 나오게 하려면 어떻게 해야하나요.

<?=get_lvname($member[mb_id])?>
로 하니깐 검색자꺼로 나옵니다...
나중에라도 도움되시라고 답글 남겨봅니다.
자기소개페이지 skin.profile 에서는

<?=get_lvname($mb[mb_id])?> 로 적용가능합니다.
관련 링크 http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=28428 가 있었네요

좋은 팁, 감사드립니다 ^^

게시판 목록

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.
글쓰기
🐛 버그신고