Fichier ecrire/inc/session.php

Gestion de l'authentification par sessions à utiliser pour valider l'accès (bloquant) ou pour reconnaître un utilisateur (non bloquant)

Source

Proposer une amélioration

Liste des constantes

Valeur

  • 100

Package

Valeur

  • true

Package

Liste des fonctions

APIs

mixed | null session_get( string $nom )

Paramètres

  1. string $nom

    Clé dont on souhaite la valeur

Retour

  • mixed | null

    Valeur, si trouvée, null sinon.

API

Exemples

  • $login = session_get('login');

Package

Proposer une amélioration
void | array session_set( string $nom , null $val = null )

Paramètres

  1. string $nom
  2. null $val = null

Retour

  • void | array

API

Package

Proposer une amélioration

Internes

Quand on modifie une fiche auteur on appelle cette fonction qui va mettre à jour les fichiers de session de l'auteur en question. (auteurs identifiés seulement)

Ne concerne que les sessions des auteurs loges (id_auteur connu)

void actualiser_sessions( array $auteur , array $supprimer_cles = array() )

Paramètres

  1. array $auteur
  2. array $supprimer_cles = array()

    Liste des clés à supprimer des tableaux de sessions

Package

Proposer une amélioration
boolean | string ajouter_session( array $auteur )

Paramètres

  1. array $auteur

    Description de la session de l'auteur. Peut contenir (par exemple) les clés : id_auteur, nom, login, email, statut, lang, ...

Retour

  • boolean | string

Package

Proposer une amélioration
boolean ecrire_fichier_session( string $fichier , array $auteur )

Paramètres

  1. string $fichier
  2. array $auteur

Retour

  • boolean

Package

Proposer une amélioration
string fichier_session( string $alea , boolean $tantpis = false )

Paramètres

  1. string $alea
  2. boolean $tantpis = false

Retour

  • string

Package

Proposer une amélioration
  • numerique: efface toutes les sessions de l'auteur (retour quelconque)
  • tableau: cree une session pour l'auteur decrit et retourne l'identifiant
  • bool: predicat de validite de la session indiquee par le cookie
boolean | null | void inc_session_dist( integer | array | boolean $auteur = false )

Paramètres

  1. integer | array | boolean $auteur = false

Retour

  • boolean | null | void

Package

Proposer une amélioration
boolean is_php_session_started( )

Retour

  • boolean

    true si une session PHP est active

Package

Proposer une amélioration
array lister_sessions_auteur( integer $id_auteur , integer $nb_max = null )

Paramètres

  1. integer $id_auteur
  2. integer $nb_max = null

Retour

  • array

Package

Proposer une amélioration

Nettoyage de quelques variables sensibles, et appel d'un pipeline

array preparer_ecriture_session( array $auteur )

Paramètres

  1. array $auteur

Retour

  • array

Traversée par le pipeline

Package

Proposer une amélioration
string rejouer_session( )

Retour

  • string

Package

Note

  • Pourquoi insère-t-on le src par js et non directement en statique dans le HTML ? Historiquement, inséré par une balise <script> en r424 puis modifié par <img> statique + js en r427
Proposer une amélioration

Cette fonction efface toutes les sessions appartenant a l'auteur On en profite pour effacer toutes les sessions creees il y a plus de 4*_RENOUVELLEALEA Tenir compte de l'ancien format ou les noms commencaient par "session" et du meme coup des repertoires plats

Attention : id_auteur peut etre negatif (cas des auteurs temporaires pendant le dump)

void supprimer_sessions( integer $id_auteur , boolean $toutes = true , boolean $actives = true )

Paramètres

  1. integer $id_auteur

    Identifiant d'auteur dont on veut supprimer les sessions

  2. boolean $toutes = true

    Supprimer aussi les vieilles sessions des autres auteurs ?

  3. boolean $actives = true

    false pour ne pas supprimer les sessions valides de $id_auteur. false revient donc a uniquement supprimer les vieilles sessions !

Utilisé par

Package

Proposer une amélioration

Si oui, la decrit dans le tableau $visiteur_session et retourne id_auteur La rejoue si IP change puis accepte le changement si $change=true

Retourne false en cas d'echec, l'id_auteur de la session si defini, null sinon

boolean | integer | null verifier_session( boolean $change = false )

Paramètres

  1. boolean $change = false

Retour

  • boolean | integer | null

Package

Proposer une amélioration