Vérouiller l'accéès d'un utilisateur sur un formulaire
tenshinan
Messages postés11Date d'inscriptiondimanche 8 mai 2005StatutMembreDernière intervention27 février 2006
-
13 juin 2005 à 16:26
tenshinan
Messages postés11Date d'inscriptiondimanche 8 mai 2005StatutMembreDernière intervention27 février 2006
-
13 juin 2005 à 17:28
Bonjour tout le monde!!
Voila, j'ai un pti pb. Je vous explique le principe!
Je fais un intranet, et j'ai donc un compte administrateur avec plusieurs administrateurs dedans. Ils peuvent donc faire des mises à jour, faire des ajout, des suppressions d'autres tables ect...
Voila ce que je recherche, je voudrais que lorsqu'un admin est en train de mettre à jour un table grace à un formulaire, aucun autre admin ne puisse entrer dans ce formulaire, et si il essaie d'y accéder qu'il est un message du genre "impossible de faire la MAJ, un autre utilisateur est déjà en train d'en faire une".
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 13 juin 2005 à 16:48
Hello,
t'as qu'a passer pour chaque table un champ du genre "is_modified", booleen.
Des qu'un admin veut rentrer dans le formulaire pour cette table : tu
verifies l'etat de ce champ. S'il est a 0, tu acceptes l'admin, et tu
fous le champ a 1. S'il est a 1, tu refuses l'admin.
Fais gaffe quand meme aux actions de tes formulaires apres...il ne faut
pas que tes formulaires se traitent sur leur propre page, sinon des
qu'il soumettra, hop, il sera vire ;-)
Quand l'admin a fini ses modifs, tu refous le champ a 0.
Pense aussi a leur session (je suppose que tu utilises les sessions) :
parce que si l'admin se deconnecte, il faut aussi passer le champ a 0,
ou il sera bloque a jamais ;-)
tenshinan
Messages postés11Date d'inscriptiondimanche 8 mai 2005StatutMembreDernière intervention27 février 2006 13 juin 2005 à 17:28
Merci de m'avoir repondu Malalam!!
Ta réponse me convient, l'idée est pas mal dans le genre!
En effet j'utilise les sessions et j'y ferai attention.
Sinon pour mon problème, je sais pas si je peut utiliser tout simplement une requête.
J'ai trouvé sur un logiciel pour MySQL, dans un SELECT, l'option [FOR UPDATE | LOCK IN SHARE MODE ], qui pourrait peut etre résoudre mon pb.
Si quelqu'un connait ces options et si elles conviennent à ce que je recherche, merci de pouvoir m'aider sur le fonctionnement de cette requête.