답변 8개
common을 로드했다면 config도 로그되었을 것이고
config에 define('_GNUBOARD_', true); 설정이 있으므로 common을 로드하면 개별 페이지가 아니라는 뜻입니다. 그냥 exit만 하세요
댓글을 작성하려면 로그인이 필요합니다.
<?php
include_once('./_common.php');
echo $member['mb_level'];
?>
이렇게 하면 회원레벨 잘 출력됩니다.
원래는 소스는
<?php
include_once('./_common.php');
?>
<?php if($member['mb_level'] == 9 ){
// 9레벨 전용 코드
}
?>
이렇게 쓰고 있었는데요
이러면 1레벨~9레벨까지 모든내용인 다 한페이지라서 페이지가 너무 커서
이걸 레벨별로 페이지를 나누고 접근권한을 페이지마다 주려했거든요..
왜 안되는지 모르겠네요 ㅠㅠ
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
혹시나 해서 글을 남겨봅니다~
저도 이런경험이 있었서...노파심에 글을 남겨봅니다~
<?php
include_once('./_common.php');
echo $member['mb_level'];
?>
이렇게 했을때 회원레벨이 출력이 되나요..?
댓글을 작성하려면 로그인이 필요합니다.
<?php
include_once('./_common.php');
if($member['mb_level'] == 9 ){
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
}
?>
이렇게도 해봤습니다 ㅠㅠ
그냥
<?php
include_once('./_common.php');
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
?>
이렇게 하면 개별페이지 접근불가가 잘되는데 왜 그럴까요 ㅠㅠ
if 문이 틀린걸까요?
댓글을 작성하려면 로그인이 필요합니다.
<?php
if($member['mb_level'] == 9 ){
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
}
include_once('./_common.php');
?>
이렇게 해도 안되고요 ㅠㅠ
댓글을 작성하려면 로그인이 필요합니다.
추가설명드릴께요 ㅠㅠ
별도로 특정페이지를 만들었습니다.
<?php
include_once('./_common.php');
?>
이렇게 상단에 인클루드 시켰구요..
9레벨로 테스트 아이디를 만들어서
<?php if($member['mb_level'] == 9 ){ ?>
<?php if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 ?>
<?php } ?>
<?php
include_once('./_common.php');
?>
이렇게 했는데 코드대로라면 9레벨 접근시 개별페이지 접근불가가 되어야 하는데
아무런 동작도 안합니다 ㅠㅠ
댓글을 작성하려면 로그인이 필요합니다.
부등호 방향이 거꾸로인데요... 지금 상황에선 레벨 5이상이면 이후 실행을 안 한다는 뜻입니다.
그리고 $member 변수를 정의하는 common.php를 불러들인 이후에 저 구문이 들어가야 합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
include_once('./_common.php');
if($member['mb_level'] == 9) exit;
[/code]
이렇게 하면 레벨 9 일 때 접근제한을 하게 됩니다.
휴란드님 말씀이 그 말이에요.
[code]
if (!defined('_GNUBOARD_')) exit;
[/code]
이 구문은 common.php를 불러들이지 않았을 때 _GNUBOARD_라는 변수가 선언되지 않는 점을 이용하는 것으로, common.php를 불러들이지 않고 실행하는 경우에 exit이 실행되는 원리입니다.
[code]
include_once('./_common.php');
if($member['mb_level'] == 9) {
if (!defined('_GNUBOARD_')) exit;
}
[/code]
이 경우에는 멤버 레벨이 9이니까 괄호 안이 실행되지만, _GNUBOARD_ 변수가 common.php에서 선언되었으므로 exit이 실행되지 않습니다.
화이팅하세요...