Reputation: 3854
I am working on Codeigniter and following this link codeigniter check for user session in every controller to check session at every controller, i have created MY_Controller.php inside libraries folder
<?php
class MY_Controller extends CI_Controller
{
public function __construct()
{
parent::__construct();
}
public function is_logged_in()
{
$user = $this->session->userdata('logged_in');
return isset($user);
}
}
?>
Create_Check.php
Class Create_Check extends MY_Controller {
public function __construct() {
parent::__construct();
}
public function edit_getting_started($c_id)
{
if ($this->is_logged_in())
{
$course_data['result']=$c_id;
$this->load->view('goal',$course_data);
}
else
{
// go to login page.
}
}
}
When i run Create_Check/edit_getting_started/3 i get the following error :
Fatal error: Class 'MY_Controller' not found in
I'm new to Codeigniter an do not have much knowledge about it i want a standard approach to check session at every page. Please help to solve my problem.Can we only put a check in controller construct method as seen in this link CodeIgniter - How to check session to be used at every methods
Upvotes: 1
Views: 2140
Reputation: 14752
To extend a core class, you must put its extension (the MY_Controller.php file in this case) under core/, not libraries/.
Link to the manual explaining this: http://www.codeigniter.com/userguide3/general/core_classes.html#extending-core-class
Upvotes: 2