bonjour. Ce que je voudrais c'est avoir un seul accès à un seul utilisateur c'est-à-dire :
Mr x est connecté sur un poste
Mr y veut se connecter sur un autre poste avec le même utilisateur .
Moi ce que je veux c'est bloquer Mr y à se connecter.
bonjour. Ce que je voudrais c'est avoir un seul accès à un seul utilisateur c'est-à-dire :
Mr x est connecté sur un poste
Mr y veut se connecter sur un autre poste avec le même utilisateur .
Moi ce que je veux c'est bloquer Mr y à se connecter.
Bonjour,
Une trace vers la solution final (pas forcement la meilleur )
En activant la gestion des sessions, chaque utilisateur obtient un ID de session, qui peut être enregistré dans la base des utilisateurs.
Donc lorsque Mr X, ce connecte, on enregistre son IDS dans le champ. Arrive alors Mr Y, il essai de ce connecter, mais le champ qui contient l'IDS contient une valeur alors on peut lui dire que la connexion est refusé.
Ce pose alors un problème, si l'ordinateur de l'utilisateur X, plante et qu'il revient sur le site un peut plus tard, le champ IDS à conserver sa valeur, puisque la déconnexion volontaire ne c'est pas faite et le champ n'aura pas été remis a zéro (il faut le prévoir dans la programmation, c'est pas automatique). Donc il faut prévoir une vérification de la validité de la connexion de l'utilisateur (la par contre je sèche , enfin pas vraiment)
Un indice serait d'utiliser l'adresse IP en plus pour vérifier car même si le pc a planter, son adresse IP restera la même car en règle général le temps d'attribution des adresse est plus longue que 1h.
Voilà, en espérant que ces quelques propositions seront utiles.
merci sniper
j'ai déjà travaillé avec un champ comme identifiant et j'ai tombé dans un problème.
lorsque l'utilisateur ferme la fenêtre de navigateur sans déconnecter la valeur reste fixe c-a-d lorsque Mr x veut se connecter à nouveaux le programme va le bloquer.(même cas un pc planté).
j'ai trouvé une méthode qui s'exécute avant de fermer une fenêtre,mais le problème est lorsque je change de fenêtre le programme la considère comme une page fermée.
A propos de l'ip.j'ai jamais travaillé avec.
j'ai le même soucis.
j'avais pensé à un id de session aussi mais le même probleme
est venu du coup retour à la case départ.
j'ai jamais travaillé avec l'adresse ip non plus. qlq un aurait-il
un lien vers un tuto?
J'ai fai un dev equivalent il y a quelques temps. Sur une serveur dedié vous pouvez accéder au repertoire où son stocké lles fichiers de session, il est donc facile de tester si la session est toujours valide (fichier présent ou non).
Sinon vous pouvez enregistré le timestamp avec l'ID de session. Attention il faudrat mettre à jour le timestamp à chaque changemet de page. Ensuite il ne reste plus qu'a comparé si le timestamp en base + le temps de validité de la session (php.ini) sont plus vieux que le tiimestamp actuel!
Ok la deuxième solution est un peu plus longue.
dans les deux cas vous aurez le problème du temps d'expiration de la session si la personne ne se deconnecte pas comme vous l'avez prévu et que la session n'est pas killé par votre script
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager