2013-06-19 2 views
1

stackoverflow는 도움이되었지만 이번에는 anythig를 찾지 못했습니다. 내가 워드 프레스와 같은 시스템을 만들고있어 : /관리/ /컨텐츠/ /index.php관리자 패널 시스템

그래서, WP 등의 '내용'은 '테마',하지만 내 질문을해야합니다 내부 그게 아니야. 물론 관리자는 로그인해야합니다./admin/* 내부의 모든 것을 내 /admin/login.php로 어떻게 리디렉션 할 수 있습니까? 시작에서 수행

if (!empty($_SESSION['logged_in'])) 
echo something; 
else 
redirect something; 

하지만, 모든 페이지에 그것을 만들 싶지 않아, 나는 header.php처럼 원하는 :

는 PHP 코드 : 내가 좋아하는 사용하는 코드를 발견 :

if (!empty($_SESSION['logged_in'])) 
header ('Location: webpage'); 

HTMLCODE 여기.

하지만 HTML 코드가로드되기를 원하지 않습니다. 먼저 HTML 코드가 표시되기 전에 리디렉션을 원합니다. 가능한가? 같은

답변

0

시도 뭔가 :

if (!empty($_SESSION['logged_in'])) { 
header ('Location: /admin/login.php'); 
exit; 
} 
else 
{ 
// HTML 
} 

는 브라우저에 다른 헤드 정보를 보내기 전에 헤더()를 호출해야합니다.

+0

, 나는 모든 페이지에 타입을 원하지 않는다 : "empty session ... else ...". 나는 functions.php를 만들고 함수 is_logged를 작성하여 검증 할 것인지 아닌지를 "header (Location : login.php); exit;"라고 생각합니다. 그게 효과가있다. –

0

관리자 인 경우 최소한 계정을 검색하려면 계정의 SQL 데이터를 검색하여 세션에 저장한다고 생각하십시오.

$_SESSION['user_id']$_SESSION['user_prev']을 생각해 보자는 USER_ID 당신의 SQL의 차 키를 계정이며, user_prev는 특권이다, 저 사람들은, 당연히 그들이 저장해야합니다 특권의 번호입니다

Member = 1 
Developer = 50 
Admin = 99 

을 가정 해 봅시다 귀하의 데이터베이스 및 검색 데이터 ...

우리는 특정 "방문객"이 로그인했다고 가정해야합니다 ... 우리는 회원/개발자 또는 관리자인지 여부를 알 수 없습니다. 나는 'include_once 문'대신에 특정 콘텐츠/PHP로 사용자를 리디렉션하는 것은 ...이 또한 콘텐츠를 보호하는 데 도움이됩니다를 사용

if(isset($_SESSION['user_id'])) 
{ 
    if(isset($_SESSION['user_prev'])) { 
      /*We need to check if it is Admin or else it might be 
      *a Developer or just a Member 
      */ 
      if($_SESSION['user_prev'] == 99) { 
       include_once 'admin_content.php'; 
      }elseif($_SESSION['user_prev'] == 50) { 
       include_once 'developer_content.php'; 
      }else{ 
       include_once 'member_content.php'; 
      } 
    } 
}else { 
    header("Location: login.php"); 
} 

...

내가 말했듯이 같은 일이
+0

그래, 고마워. 내 시스템을 만들려고 노력할거야. –

+0

답장을 보내려면 check ... thanks – daison12006013

관련 문제