Tester la présence d'une session en cours

clicagauche
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 9
Inscription: 6 Nov 2006

Tester la présence d'une session en cours

Message le Ven Avr 10, 2009 13:45

Bonjour

Dans un site j'ai créé un zone administrateur protégé par une session et accessible a plusieurs administrteurs.
Je me demande comment faire pour éviter que deux administrateurs soient en train de modifier le site même temps.
Existe t'il un moyen pour un administrateur qui veut se connecter de savoir si il y a déja un administrateur qui a ouvert une session ?

Merci de votre aide
Mathieu


spout
WRInaute accro
WRInaute accro
 
Messages: 4382
Inscription: 14 Mai 2003

Re: Tester la présence d'une session en cours

Message le Ven Avr 10, 2009 13:57

Tu veux empêcher que 2 admins soient loggués en même temps?
Il y'a une technique en enregistrant un "fingerprint" dans la session et le comparer avec le courant.
Fingerprint basé sur un md5() du USER_AGENT, HTTP_ACCEPT_LANGUAGE et du REMOTE_ADDR (par exemple)

=> http://shiflett.org/articles/session-hijacking


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2217
Inscription: 10 Avr 2005

Re: Tester la présence d'une session en cours

Message le Ven Avr 10, 2009 14:15

Tu donnes un nom à ta session administrateur. Après tu peux tester si elle existe.

clicagauche
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 9
Inscription: 6 Nov 2006

Re: Tester la présence d'une session en cours

Message le Ven Avr 10, 2009 14:44

Merci pour ces réponses :-)

Je ne suis, hélas, pas assez calé en informatique et en englais pour comprendre le fonctionnement du fingerprint et je n'ai rien trouvé de compréhensible sur google.

En fait c'est assez simple de voir si une session admin est en cours il me suffit de placer un fichier ou une ligne dans la base de donnée au moment de la connexion d'un administrateur.
Si il se déconnecte de lui même tout va bien, mais si il quitte le navigateur sans cliquer sur "se déconnecter" ou si le timeout se déclenche, ça ne va plus il n'y aura personne pour effacer le fichier ou la ligne dans la bdd !!

Je crois que je vais partager l'administration en plusieurs zones pour simplifier, comme ça chacun sa zone!

Mathieu


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2217
Inscription: 10 Avr 2005

Re: Tester la présence d'une session en cours

Message le Ven Avr 10, 2009 16:19

clicagauche a écrit:Si il se déconnecte de lui même tout va bien, mais si il quitte le navigateur sans cliquer sur "se déconnecter" ou si le timeout se déclenche, ça ne va plus il n'y aura personne pour effacer le fichier ou la ligne dans la bdd !!


Voila tout l'intérêt de passer par une session.
La session expire au bout d'un certain temps si elle n'a plus d'activité (tu peux définir ce temps) et est supprimée automatiquement.
Comme tu l'as nommée tu peux tester si elle existe.

clicagauche
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 9
Inscription: 6 Nov 2006

Re: Tester la présence d'une session en cours

Message le Ven Avr 10, 2009 19:18

Oui mais je cherche a savoir si l'autre administrteur a ouvert une session
La fin de la session en cours par le sessionlifetime (24 minutes) ne pourra pas supprimer le,fichier de présence ou modifier ma bdd, pour cela il faut une action

Mathieu


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités