2016-06-08 60 views
1

我无法在我的登录页面上加载我的视图。这里的会话有问题。我有一个帮助器类,它是$ key安全性的一部分。但我认为这是做一个会话作为一个错误说。

我以为我准备了一个数字线不知道它是否也可能导致。

<?php $this->load->library('session'); 
 
     if(!$this->session->user_email) 
 
     { ?> 
 
      <li <?php echo ($controller=="login")? "class='active'": ""?>> 
 
      <a href="<?php echo base_url('login') ?>"> 
 
      Login 
 
      </a> 
 
      </li> 
 
      <?php } else { ?> 
 
      <li> 
 
       <a href="<?php echo base_url('login/logout') ?>"> 
 
        Logout 
 
       </a> 
 
      </li> 
 
<?php } ?>

这个问题

Error was encountered 
 

 
Severity: Notice 
 

 
Message: Undefined property: CI_Loader::$session 
 

 
Filename: views/header.php 
 

 
Line Number: 145 
 

 
Backtrace:

+0

你能提供更多的代码吗?可以很容易解决。 –

+0

您在控制器或autoload.php上加载会话库而不是查看。 – user4419336

+0

如何在视图中加载会话? –

回答

0

审查你的代码后,你不应该做的帮手。你应该在你的View.php中做到这一点。在你的View.php中,应该使用$CI = & get_instance();

$CI = & get_instance(); 
$CI->load->library('session'); //change from $this->load->library('session'); 
$CI->session->user_data('user_email'); // change from $this->session->user_email 

获取从查看HTML代码为一个变量:

$html_code = $this->load->view('folder/view_name',$data,true); 
+0

如果代码为空,则视图为null,问题null,但视图为null –

+0

什么是问题null? –

+0

你的helper.php不应该包含html代码。你应该在视图中做得比在helper.php –

0

进去config文件夹和 replage到autoload.php这个

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

$autoload['libraries'] = array();