【发布时间】:2013-12-05 17:38:57
【问题描述】:
您好,我已经制作了名为 MY_Controller 的基本控制器,并具有以下代码
<?php
class MY_Controller extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->is_logged_in();
}
function is_logged_in()
{
$is_logged_in = $this->session->userdata('is_logged_in');
if (!isset($is_logged_in) || $is_logged_in != true) {
redirect('login');
}
}
}
?>
我的 login.php 控制器是
class Login extends CI_Controller {
public function index()
{
$email = $this->input->post('email');
$password = md5($this->input->post('password'));
$this->load->model('users');
$record = $this->users->authenticate_user($email, $password);
if (count($record) && $record != false) {
foreach ($record as $user) {
$userdata = array(
'is_logged_in' => true
);
}
$this->session->set_userdata($userdata);
redirect('index');
}
else
{
$this->load->view('login');
}
}
}
所有其他控制器都是这样扩展的
class Index extends MY_Controller
{
function __construct(){
parent::__construct();
}
}
class Messenger extends MY_Controller
{
function __construct(){
parent::__construct();
}
}
但会话仅在索引控制器中可用。甚至所有其他控制器也扩展了 MY_Controller
任何人都来帮忙
【问题讨论】:
标签: php codeigniter session session-variables session-cookies