Recherche…


Remarques

La classe Sessions Codeigniter utilise les cookies du navigateur pour enregistrer les données qui persisteront sur plusieurs chargements de page.

Référence: https://codeigniter.com/user_guide/libraries/sessions.html

Créer une session

Pour initialiser une session, vous pouvez simplement la charger dans votre contrôleur, ce qui est généralement placé dans les constructions du contrôleur, mais il peut également être chargé automatiquement dans le tableau de l'application / config / autoload.php:

$this->load->library('session');

Gestion des données de session

Une session est simplement un tableau constitué des informations utilisateur suivantes:

  1. L'identifiant de session unique de l'utilisateur (il s'agit d'une chaîne aléatoire statistique avec une entropie très forte, hachée avec MD5 pour la portabilité et régénérée (par défaut) toutes les cinq minutes)
  2. L'adresse IP de l'utilisateur
  3. Les données de l'agent utilisateur de l'utilisateur (les 120 premiers caractères de la chaîne de données du navigateur)
  4. L'horodatage "dernière activité".

Source ( what-is-session-data )


Pour récupérer des données de session

tel que le SessionID:

$this->session->userdata('session_id');

Note - pour Codeigniter 3.x, vous pouvez utiliser la syntaxe ci-dessus, mais le concept ou les objets magiques ont été introduits, où vous pouvez utiliser $this->session->session_id .

Rappelez-vous que userdata() renvoie NULL si l'élément de session n'existe pas.

Pour récupérer toutes les données de session

$this->session->all_userdata()

Pour définir des données de session

La méthode set_userdata() vous permet de définir des données dans votre session. L'exemple suivant illustre un exemple de tableau que vous souhaitez insérer:

$newdata = array(
        'username'  => 'johndoe',
        'email'     => '[email protected]',
        'logged_in' => TRUE
);

$this->session->set_userdata($newdata);

Vous pouvez également définir une donnée à la fois, par exemple:

$this->session->set_userdata('some_name', 'some_value');

ou

$some_name = 'some_value';
$this->session->set_userdata($some_name);

Pour supprimer les données de session et de session

$this->session->unset_userdata('some_name')

Cette méthode accepte également un tableau de clés d'élément à désélectionner:

Pour Codeiginter 3.x:

$array_items = array('username', 'email');

$this->session->unset_userdata($array_items);

Pour Codeiginter 2.x (cette syntaxe héritée ne prend pas en charge 3.x):

$array_items = array('key' => 'value');

$this->session->unset_userdata($array_items);


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow