BOARD

강좌·기초

그누보드 회원 등급 및 로그인 상태별 조건부 콘텐츠 출력 방법

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 20회 작성일 26-09-15 09:12

본문

그누보드 회원 등급 및 로그인 상태별 조건부 콘텐츠 출력 방법

그누보드에서 로그인 상태, 최고관리자 여부, 회원 레벨(mb_level)에 따라 콘텐츠를 다르게 표시하거나 접근을 제어하는 조건문 작성 방법을 안내합니다.

그누보드 로그인 상태 및 관리자 권한별 조건부 콘텐츠 출력 방법

그누보드에서 사용자의 권한이나 로그인 상태에 따라 콘텐츠 표시를 다르게 제어하려면 시스템이 제공하는 $is_admin 전역 변수와 $member 배열을 활용할 수 있습니다. 이를 통해 최고관리자, 일반 회원, 비회원 등을 각각 구분하여 처리할 수 있습니다.

권한 및 상태별 기본 조건문 구조

관리자 여부, 로그인 상태, 회원 등급(mb_level)을 판별하여 분기하는 기본적인 PHP 조건문 구조는 다음과 같습니다.

if ($is_admin) {
    echo "최고관리자입니다.";
} else if ($member['mb_id']) {
    // 일반 회원일 때
    echo "회원입니다.";
} else if (!$member['mb_id']) {
    // 비회원일 때
    echo "<script type=\"text/javascript\">";
    echo " alert('로그인 상태가 아니거나, 권한이 없습니다.');";
    echo " location.href='/index.php';";
    echo "</script>";
    exit;
}

주의사항 및 확인 사항

  • 버전이나 환경에 따라 경로 변수(예: G5_URL) 사용 형태에 차이가 있을 수 있으므로 사이트 환경을 먼저 확인하십시오.
  • 비회원 차단 시 자바스크립트 이동 처리를 사용한다면, 반드시 exit;를 함께 작성하여 이후 코드가 무단 실행되지 않도록 차단해야 합니다.

그누보드 특정 회원 레벨 및 아이디별 접근 제어 방법

그누보드에서 특정 레벨 범위나 특정 아이디 소유자에게만 접근을 허용하거나 메시지를 다르게 보여주고 싶을 때는 비교 연산자를 조합하여 조건문을 작성할 수 있습니다.

1. 특정 레벨 대역 제한 예시

먼저 로그인 여부를 확인한 뒤, $member["mb_level"] 값을 이용해 특정 레벨 대역을 제한하는 코드를 적용할 수 있습니다.

// 특정 레벨만 접근하도록 제한하는 예시
if (!$member["mb_id"]) {
    alert("로그인 하십시요.^^");
    exit;
} elseif ($member["mb_level"] <= 3 || ($member["mb_level"] >= 5 && $member["mb_level"] <= 9)) {
    alert("레벨4만 볼 수 있습니다.");
    exit;
}

2. 특정 아이디별 별도 처리 예시

특정 아이디 소유자에게만 별도의 처리를 적용하고 그 외의 사용자를 제한하려면 아래와 같이 작성할 수 있습니다.

// 특정 아이디만 별도로 처리할 때
if ($member["mb_id"] == "admin") {
    alert("admin님 입니다.");
} else {
    exit;
}

주의사항

버전이나 환경에 따라 경로 변수(예: G5_URL 등)의 사용 형태에 차이가 있을 수 있으므로 적용하는 사이트의 설정과 버전을 확인해야 합니다.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.