Vos contrôles d'authentification doivent être dans une bibliothèque:
Le est un extrait d'un script CodeIgniter de authentcation de base:
class Site_sentry
{
function Site_sentry()
{
$this->obj =& get_instance();
}
function is_logged_in()
{
if ($this->obj->session)
{
if ($this->obj->session->userdata('session_logged_in'))
{
return TRUE;
}
else
{
return FALSE;
}
}
else
{
return FALSE;
}
}
function login_routine()
{
//do login here (enter into session)
}
}
Cette bibliothèque est stockée dans application/bibliothèques sous un nom de fichier du nom sa classe avec le suffixe .php.
Ensuite, vous pouvez ajouter à votre fichier de configuration autoload application/conig/config.php:
$autoload['libraries'] = array('database', 'site_sentry', 'session');
ou le charger manuellement dans chaque contrôleur:
$this->load->library('Site_sentry);
Ensuite, vous pouvez Vérifiez votre session depuis les contrôleurs, comme ceci:
class Class extends Controller{
function Class()
{
parent::Controller();
if($this->site_sentry->is_logged_in() == FALSE){
redirect('managerlogin/');
}
}
}
Vérifiez également cette page de documentation http://codeigniter.com/user_guide/libraries/sessions.html; d'un intérêt particulier est le stockage de la session dans la section de la base de données.
Merci beaucoup – Saqueib