Session unique PHP

Lerdouille Messages postés 14 Date d'inscription   Statut Membre Dernière intervention   -  
Droopy_ Messages postés 252 Statut Membre -
Bonjour,

j'ai un site avec un accès login/mdp programmé en PHP. J'aimerai mettre en place un système de connexion unique. A savoir, lorsqu'une personne se logue avec ses accès, une autre personne ne peut pas se loguer en même temps avec ces mêmes accès.

Comment peut on faire ?

Cdt.

2 réponses

IdleMan Messages postés 254 Statut Membre 60
 
Lorsque la perssonne se logue , tu le signale dans une base de donné et tu regarde en meme temp si ce compte n'est pas loggué dans cette meme base de donnée.

L'algorythme ressemble a ça :

Lors du log

Verifier base de donnée

Si Compte existe dans la base de donnée alors Impossible de se connecter

Sinon

Inscrire le compte dans la base de donnée


Il faut également penser a supprimer le compte dans la base de donnée lors de la déconnexion.
-1
Lerdouille Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
 
Ok pour cette solution, mais comment gerer le cas ou la personne ne se delogue pas via un bouton logoff mais juste en quittant la page ? Pareil pour le temps de session ?
0
IdleMan Messages postés 254 Statut Membre 60
 
En javascript il existe une fonction qui execute le code de ton choix juste avant la fermeture de la page , elle se place dans <body> de la façonsuivante :

<body onbeforeunload="fonction_a_executer()" >

J'ignore si il existe un equivalent en php mais tu peut utiliser cette fonction pour signaler la déconnexion.

Après il y a peut etre une meilleure solution mais la je ne vois pas . (enfin j'ai bien une idée mais ça serais encore plus compliqué).
-1
Droopy_ Messages postés 252 Statut Membre 25
 
Souvent, pour ce genre de problème, tu peux stocker également la date et l'heure de la dernière action, et considérer, par exemple, qu'à défaut d'action dans la dernière demi-heure, l'utilisateur est déconnecté.
0