2011-12-15 4 views
1

저는 CodeIgniter를 처음 사용하고 로그인 폼에 탱크 인증을 사용합니다. 내 템플릿에 Tank Auth를 넣으려고하면 로그인 양식에 ’이 전혀 나타나지 않습니다. 나는 콘트롤러 이외의 것을 바꾸지 않았다. ’. 여기 로그인 폼이 나타나지 않습니다.

내 컨트롤러 코드 :

public function __construct(){ 
    parent::__construct(); 
    $this->load->helper(array('form','url')); 
    $this->load->library('tank_auth'); 
    //$this->load->model('users_model'); 
} 
public function index(){ 
    if (!$this->tank_auth->is_logged_in()) { 
     $data['loginform']='login_form'; 
     $this->load->view('tampilan',$data); 
     //redirect('/auth/login/'); 
    } else { 
     $data['user_id'] = $this->tank_auth->get_user_id(); 
     $data['username'] = $this->tank_auth->get_username(); 
     $this->load->view('welcome', $data); 
    }    
} 

여기보기 폴더에 내 템플릿입니다 :

<div id="page"> 

<div id="bg1"> 

    <div id="bg2"> 

     <div id="bg3"> 

      <!-- content --> 

      <?php $this->load->view($loginform); ?> 

      <!-- end content --> 

      <!-- sidebar --> 

      <?php echo $this->load->view('content'); ?> 

      <!-- end sidebar --> 

     </div> 

    </div> 

</div> 

그것은 ’의 간단한 코드, 내가 생각

I 때문에 단지 컨트롤러를 바꾸지 만, 왜 브라우저에 나타나지 않습니까? ’?

답변

0

코드 자체가 정확합니다. 내가 말할 수있는 것은 잘못된보기를 호출하고 오류를 표시하기에는 오류보고 수준이 너무 낮을 수 있습니다. 내 말은 :

  1. login_form.php보기가 사용자 정의보기입니까? 경로가 맞습니까? 거의 비어있는 단순한보기를 사용해보십시오 (정확하게 "안녕하세요 세계"라는 텍스트와 함께)? 제대로 호출되는지 확인하십시오.
  2. Tank Auth에서 제공하는 기본 login_form.php보기를 사용하고 있고 콘텐츠를 그대로 복사 한 경우보기는 auth 폴더에 있어야합니다 (다운로드 한 패키지에 포함되어 있음). 따라서 당신이 당신의 컨트롤러 $data['auth/login_form'];, 점 2의 사태에
  3. )로 전화한다, 원래의 탱크 인증의 login_form.php 코드에서 정의되지 않은 일이 변수의 많은이 포함되어 있습니다. 오류를 표시하지 않으면 빈 페이지가 나타납니다. index.php에있는 환경을 "개발"을 설정하고 그

    error_reporting(E_ALL); 
    ini_set('display_errors',1); 
    

    단지 탱크 인증의 functinality을 테스트하려면, 원래의 컨트롤러를 호출하려고 당신의 index.php의 시작 부분에 충분한 곳이 아니라면 http://www.yoursite.com/index.php/auth로 가십시오. 그게 작동한다면, 인증 컨트롤러의 login() 메소드를 살펴보면, 원래의 login_form.php에 필요한 변수와 방법을 알 수 있습니다.

  4. 사소한 점, echo보기가 필요하지 않으므로 $this->load->view('content');이면 충분합니다.

+0

먼저 내 문제의 동료에 대한 답변에 감사드립니다. 포인트 1에 대해 login_form.php에 대해 전혀 사용자 정의하지 않았습니다. 예, 경로가 올바르게 맞습니다. 예, 안녕하세요. 세계 텍스트를 사용해도 올바르게 호출 될 수 있습니다. 포인트 2에서 네, 탱크 인증에 의해 제공되는 기본 login_form 뷰를 사용합니다, 나는'$ data [ 'auth/login_form'];'시도했습니다. 오류가 있습니다. 3 번 지점에서 index.php에 환경을 설정하는 것이 무슨 뜻인지 알 수 없습니까? 구체적으로 말할 수 있습니까? – ranggadablues

+0

업데이트 조건, 인증 폴더에서 login_form보기를 확인했는데'$ show_captcha'에 PHP 주석'/'을 넣었습니다. 그게 전부는 왜 login_form은 내 템플릿에 표시 할 수 없지만, 내가 의견을'//'제거 할 때이 같은 몇 가지 오류가 나타납니다 : PHP는 오류가 심각도를 발생했습니다' 가 : 메시지주의 : 정의되지 않은 변수 : login_by_username 파일 이름을 : auth/login_form.ph 줄 번호 : 9 ' 이유를 말해 줄 수 있습니까? 감사합니다. – ranggadablues

+0

인증 컨트롤러에서 login() 메소드를보세요. 앞에서 말했듯이 login_form.php에 대한보기 변수가 어디에 생성되어 있는지 확인할 수 있습니다. 어쨌든, 그건 설정 옵션입니다. –

관련 문제