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

로그인 권한 주기전 로그인 오류에 대한 문제 채택완료

nana021 1년 전 조회 1,990

안녕하세요 몇가지 궁금하한 점이 있어서 고수님들게 문의드립니다

 

로그인제한을 걸었을때 레벨 승인이 안되서 접속할 수 없다는 알림 메시지가 뜬후에

 

현재 페이지에서 '회원정보찾기' '회원가입'을 눌럿을때

 

보시는바와같이 이미 로그인중입니다 이렇게 뜹니다

 

http://sir.kr/data/editor/2410/3068457187_1729155541.8062.jpg" width="100%" />

아마 레벨승인이 안되서 거부가 된상태에서도 로그인으로 인식해서 그런거같은데

 

왠만큼 검색해서 있는코드를 다 써본상태인데도 안되네요 어떤 코드를 어떻게 수정해야할까요?

 

</p>

<p>// 로그인 여부 확인

if (!$is_member) {

    // 로그인이 되어 있지 않으면 로그인 페이지로 이동

    goto_url(G5_BBS_URL.'/login.php');

    exit;

}</p>

<p>// 로그인 여부 확인 및 예외 페이지 설정

$allowed_pages = array('/password_lost.php', '/register.php');

$current_page = $_SERVER['SCRIPT_NAME'];</p>

<p>// 회원 레벨이 2 미만일 경우 접근 제한, 하지만 예외 페이지에서는 제한하지 않음

if ($member['mb_level'] < 2 && !in_array($current_page, $allowed_pages)) {

    echo "<script>

        alert('레벨2부터 접속하실 수 있습니다');

        history.back(); // 이전 페이지로 돌아가거나 다른 동작을 할 수 있습니다.

    </script>";

    exit; // 이후의 코드를 실행하지 않도록 종료

}</p>

<p>

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

답변 2개

채택된 답변
+20 포인트
R
1년 전

</p>

<p><?php</p>

<p>// 로그인 여부 확인</p>

<p>if (!$is_member) {</p>

<p>    // 로그인이 되어 있지 않으면 로그인 페이지로 이동</p>

<p>    goto_url(G5_BBS_URL.'/login.php');</p>

<p>    exit;</p>

<p>}</p>

<p>// 로그인 여부 확인 및 예외 페이지 설정</p>

<p>$allowed_pages = array('/password_lost.php', '/register.php');</p>

<p>$current_page = $_SERVER['SCRIPT_NAME'];</p>

<p>// 회원 레벨이 2 미만일 경우 접근 제한, 하지만 예외 페이지에서는 제한하지 않음</p>

<p>if ($member['mb_level'] < 2 && !in_array($current_page, $allowed_pages)) {</p>

<p>    if(function_exists('social_provider_logout')){</p>

<p>        social_provider_logout();</p>

<p>    }</p>

<p>    session_unset();</p>

<p>    session_destroy();</p>

<p>    set_cookie('ck_mb_id', '', 0);</p>

<p>    set_cookie('ck_auto', '', 0);</p>

<p>    echo "<script></p>

<p>        alert('레벨2부터 접속하실 수 있습니다');</p>

<p>        history.back(); // 이전 페이지로 돌아가거나 다른 동작을 할 수 있습니다.</p>

<p>    </script>";</p>

<p>    exit; // 이후의 코드를 실행하지 않도록 종료</p>

<p>}</p>

<p>

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

답변에 대한 댓글 1개

n
nana021
1년 전
정확했습니다! 감사합니다!

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

로그아웃하시고 해보시면 되지 않을까요?

아니면 if(!$is_admin) {

} 조건문을 추가해보세요

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

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

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

로그인