2014-04-12 3 views
0

Codeigniter HMVC를 설치했는데 실제로 작동하는 방식이 마음에 들지만 새로 익숙합니다. 내 질문에 어떻게 로그인을 확인하겠습니까? 로그인 모듈을 만들어야한다는 것을 알고 있습니다. 그리고 나서 코어 폴더에 들어가서 MX_Loader에 추가했습니다.Codeigniter 로그인 시스템 HMVC

function __construct(){ 
    $this->load->helper('url'); 
    redirecht('login'); 
} 

그러나 헬퍼 명령을 인식하지 못합니다. 내가 뭔가 잘못하고 있는거야? 이 페이지에서 세션을 확인하고 싶었고 세션이 존재하지 않으면 로그인 모듈로 리디렉션하려고했습니다. 어떻게해야합니까? 당신은/자동로드에게 세션 라이브러리를 포함해야이 미리

+1

"redirecht"를 보셨습니까? 그리고 각 컨트롤러의 로그인을 확인하려면 "core"폴더에 MY_Controller를 추가 한 다음 확장하십시오. 가장 쉬운 방법입니다. –

+0

MY_Controller를 확장했지만 반응하지 않습니다. 예를 들어 리디렉션 ('로그인')을 입력하면 아무 것도하지 않습니다. 오류를 입력하면 오류가 발생하지만 오타를 유감스럽게 생각해서 수정했습니다. –

답변

0

에서

감사합니다.

는 "application/config/autoload.php 파일을 열고 다음을 설정합니다 ..이 다음의 예를보십시오.

$autoload['libraries'] = array('session'); 
$autoload['helpers'] = array('url'); 

을 로그인 컨트롤러 (존재하는 사용자 계정을 확인하는 데이터베이스에서 확인을 마쳤 으면 아래의 행을 추가하십시오.

$session_array = array('admin_id' => "1",'username' => "admin"); // here the "1" and the string "admin" are just for example. modify the array key and value as per your requirement. 
$this->session->set_userdata('user_logged_in', $session_array); 
redirect('admin/dashboard', 'refresh'); 

이 줄을 사용하면 세션이 응용 프로그램에 추가됩니다. r 평가에서 함수 __construct에 다음 행을 추가하십시오.

function __construct() { 
    parent::__construct(); 
    if(!$this->session->userdata('user_logged_in')){ 
    redirect('login'); 
    } 
} 

희망이 도움이 될 것입니다.

+0

고마워요. 유용하지만 실제로 내가 찾던 것이 아닙니다. VincentDecaux이 실제로 내 질문에 대답했습니다. –