Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] Problème de suppression d'un utilisateur

Posted by Nicolas on 03/08/2010 16:08

Bonjour

En début d'année j'ai décidé de me lancer dans l'utilisation d'un framework afin de mieux organiser mes différents projets. J'ai découvert Jelix qui m'a rapidement séduit. Bref je travaille actuellement sur un projet qui utilise une base de données Postgres. Afin de faire rapidement un compte utilisateur, j'ai utilisé le module jcommunity qui répondait globalement à ce que je voulais. Je précise aussi que j'utilise le driver PDO pour la connexion à la base postgres (j'avais un petit problème avec le driver pgsql, car les booleans retournés étaient "t" et "f")

Toutes ces explications pour en venir au problème lors de la suppression d'un compte utilisateur (par l'utilisateur lui même):

[[exception 23503]] SQLSTATE[[23503]]: Foreign key violation: 7 ERREUR: UPDATE ou DELETE sur la table « jacl2_group » viole la contrainte de clé étrangère « jacl2_user_group_id_aclgrp_fkey » de la table « jacl2_user_group » DETAIL: La clé (id_aclgrp)=(13) est toujours référencée à partir de la table « jacl2_user_group ».

J'ai mené ma petite enquête et au final il se trouve que l'ordre des DELETE dans le fichier jAcl2DbUserGroup.class.php de la fonction removeUser n'est pas le bon. En effet :

        1 - supprime les droits sur le groupe privé (jacl_rights)
        2 - supprime le groupe personnel du user (jacl_group)
        3 - l'enleve de tous les groupes (jacl_users_group) 
  

Or dans le fichier de création des table jacl2 il y a des

FOREIGN KEY (id_aclgrp) REFERENCES jacl2_group(id_aclgrp);

sur jacl2_user_group et jacl2_rights

Donc au final si je change l'ordre de suppression :

        1 - supprime les droits sur le groupe privé (jacl_rights)
        2 - l'enleve de tous les groupes (jacl_users_group) 
        3 - supprime le groupe personnel du user (jacl_group)

Tout fonctionne. Qu'en pensez vous ? ai-je fait une erreur ou est ce un bug?

J'espère que je suis assez clair sinon n'hésitez pas à me demander plus d'explications.

  [Opened] Re: Problème de suppression d'un utilisateur

Reply #1 Posted by laurentj on 03/10/2010 15:06

Salut

merci de ton retour. Assurément, il y a bug.

Pourrais-tu créer un ticket sur http://developer.jelix.org ?

Merci d'avance

  [Opened] Re: Problème de suppression d'un utilisateur

Reply #2 Posted by Nicolas on 03/10/2010 15:46

Voila, normalement c'est fait j'ai crée le ticket sur l'interface. J'espère que je ne me suis pas trompé dans la saisie.

 
Page
  1. Re: Problème de suppression d'un utilisateur