Gestion + durée des sessions en PHP

Résolu
Coutcout86 Messages postés 195 Date d'inscription   Statut Membre Dernière intervention   -  
totodunet Messages postés 1377 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis en train de développer une application en PHP et j'utilise les sessions.
Pour comprendre un peu mon application j'ai un système d'authentification avec un login et un mot de passe.

Lorsque l'utilisateur est connecté une session est créée.
Or je n'ai pas touché à la durée des sessions et au bout d'un certain moment (valeur par défaut du PHP.ini je suppose) je perds ma session et donc mon utilisateur.

Alors ne sachant pas trop comment m'y prendre concernant la gestion des sessions je souhaite avoir de l'aide

Ce que j'aimerais c'est tester si la session est expirée ou non et si elle est expirée on retourne à la page d'authentification (ou on se déconnecte).

Alors j'ai bien pensé au session_destroy mais je ne sais pas si c'est la meilleure solution.

Pourriez-vous m'aider à résoudre cette problématique ?

Merci d'avance.
A voir également:

2 réponses

lolerki Messages postés 606 Date d'inscription   Statut Membre Dernière intervention   102
 
Bonjour,

Je ne comprends pas trop ton problème, mais si tu veux te déconnecter session_destroy est OBLIGATOIRE pour toutes déconnexion d'un utilisateur.
En ce qui concerne la durée je te conseil de crée un cookie avec une durée déterminé, comme cela il expire au bout d'un temps donnée. N'oublie pas de le détruire (avec un temps inférieur au cookie crée) lors du session_destroy

PS : J'ai eu un problème avec les cookie je te donne mon sujet (résolu) cela te permettra de voir comment détruire une session.
https://forums.commentcamarche.net/forum/affich-31184976-detruire-une-session
0
Coutcout86 Messages postés 195 Date d'inscription   Statut Membre Dernière intervention  
 
En fait ce que je souhaite faire c'est d'être déconnecté automatiquement de l'applications lorsque la session n'existe plus.

Je fais des insertions dans une base de données avec le nom de l'utilisateur connecté or quand la session n'existe plus je n'ai plus d'utilisateur donc ça pose problème. Ensuite je donne accés à des fonctionnalités selon le rôle de l'utilisateur or lorsque la session n'existe plus le rôle n'existe plus non plus et la fonctionnalité n'est plus présente.

Est-ce que tu comprends mieux ma problématique?
0
lolerki Messages postés 606 Date d'inscription   Statut Membre Dernière intervention   102 > Coutcout86 Messages postés 195 Date d'inscription   Statut Membre Dernière intervention  
 
Je te confirme que pour cela il faut détruire la session est donc session_destroy. Mais détruire une session quand l'utilisateur quitte je ne sais pas si c'est possible. Car on doit exécuter un script sur serveur or il a quitter.

PS : pourquoi mettre un utilisateur connecter dans la bdd ?
0
Coutcout86 Messages postés 195 Date d'inscription   Statut Membre Dernière intervention  
 
Pour avoir des logs précis sur qui à fait quoi et quel actions il a fait
0