• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Prevent access to pages if session is not set

#1
Is there a way that redirects user to login page if he tries to access a page without logging in.

I have my attempt on doing this but to no avail I failed 

Code:
class Navigation extends CI_Controller
{
protected $data;
public function __construct()
{
parent::__construct();
$this->load->model('user_model'); 
$this->load->helper('url');
if (!$this->session->userdata('userID') === TRUE){
header('Location: index.php');
}
}

/*
*Load the index page
*/
public function index()
{
$this->load->view('index');
}
    

    public function edit(){
        $this->page('dashboard/change_pass','dashboard/change_pass');
    }
/*
*Load the admin dashboard page
*/
public function dashboard()
{
$this->page('dashboard/index');
Reply

#2
Code:
class Navigation extends CI_Controller
{
protected $data;
public function __construct()
{
parent::__construct();
if (!isset($this->session->userdata['userID'])){
redirect('login');
}
$this->load->model('user_model'); 
$this->load->helper('url');

}
Reply

#3
If you need this to be secure, you should use one of the existing auth libraries. If you don't care about getting hacked and nothing matters, then by all means keep going down that road. It's not that the sessions library is totally hackable, but there's a lot to think about when doing authentication, and it's clear that you've not considered many of the things that would make authentication secure.
Reply

#4
You can use session variable to do this, you must be set session on login
Reply

#5
Try this:
PHP Code:
if (!$this->session->has_userdata('userID')){
 
 redirect('/');

Reply


Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  


  Theme © 2014 iAndrew  
Powered By MyBB, © 2002-2020 MyBB Group.