Bonjour,
J'ai une table de liaison entre des sociétés et des utilisateur structurée ainsi :
t_compte
---
id, societe, utilisateur, status
status indique si l'utilisateur est "propriétaire" (1) ou "délégué" (0).
seul le "propriétaire" d'une société peut supprimer des utilisateurs "délégué" de cette société.
L'interface HTML/PHP transmet uniquement l'id à supprimer et l'utilisateur demandant la suppression.
L'idée est donc de vérifier que l'utilisateur supprimant est bien "proprietaire" de la societé.
J'ai écris une requete de suppression de "delegué" ainsi avec une sous-requete :
Est-ce que cela vous parrait bon ou completement nul ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 DELETE FROM t_compte WHERE id=12345 AND societe IN ( SELECT societe FROM t_compte WHERE status = 1 AND utilisateur=toto )
Y a t'il une meilleur maniere de l'écrire en SQL ?
L'alternative que j'avais étant de découper et utiliser le langage de programmation :
1 - trouver la société correspondant à l'id
2 - vérifier si l'utilisateur est "propriétaire" de cette société
3 - si oui faire la suppression.
Merci de votre aide.
Partager