我想解决的主要问题是当有人想要访问管理面板时检查用户会话.我创建了MY_Controller类并将其放在库中.
class MY_Controller extends CI_Session {
public $logged_in = FALSE;
public function __construct() {
parent::__construct();
$this->is_logged_in();
}
public function is_logged_in()
{
$logged = $this->userdata('user_id');
$this->logged_in = ($logged) ? TRUE : FALSE;
}
function sessdestroy() {
$this->session->sess_destroy();
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的登录页面.我创建了一个重定向到管理面板(仪表板)的按钮,以测试会话检查是否有效.
class Login extends CI_Controller {
function __construct() {
parent::__construct();
}
public function index() {
$this->load->view('view_login');
if(isset($_POST['redirect'])) {
redirect('admin');
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是管理员控制器,我检查用户会话是否存在.
class Admin extends MY_Controller {
function construct() {
parent::__construct();
}
function index() {
if($this->is_logged_in()) {
$this->dodadi_destinacija();
}
else redirect('login');
}
}
Run Code Online (Sandbox Code Playgroud)
但是我得到了这个错误.
Fatal error: Class 'MY_Controller' not found in C:\wamp\www\UserPanel\application\controllers\admin.php on line 3
Run Code Online (Sandbox Code Playgroud)
你能告诉我你对给定问题的编码解决方案的看法吗:)
CI_Controller类而不是CI_SessionMY_Controller下application/core/而不是application/library