Pourquoi tu fais 3 fonctions ? Pas besoin de préparer tes requêtes.
Quand tu voudras récupérer tes utilisateurs, il faudra utiliser les jointures pour récupérer les données de tes 3 tables.
Bonjour,
Je vous explique:
USERS, ROLES, SERVICESUSERS possède une colonne ID_ROLE et ID_SERVICE en indexJ'ai des fonction dans une classe qui me permettent de récupérer ses éléments
Je les appelles dans le fichiers HTML/PHP où j'ai le formulaire et j'intègre la boucle dans le form
La question est comment puis-je optimiser ces fonctions?
Est-il optimal de faire la requête à partir de l'utilisateur genre users.id_service -> services.name?
Si oui comment fait-on? (ouais je sais j'abuse, mais je ne comprends pas bien comment fonctionne les requêtes entre table liées)
Merci par avance de votre aide.
Pourquoi tu fais 3 fonctions ? Pas besoin de préparer tes requêtes.
Quand tu voudras récupérer tes utilisateurs, il faudra utiliser les jointures pour récupérer les données de tes 3 tables.
Salut,
Dans ton cas, tu dois récupérer 3 données qui n'ont rien à voir : Une liste des rôles, une liste des services et les informations de l'utilisateur.
Tu peux donc faire 3 requêtes pour cela.
Idéalement, si tu fais trop de requêtes SQL, tu peux mettre en cache le résultat pour éviter de le faire à chaque chargement.
Pour ce qui est de la requête préparée, personnellement je la laisserais car ça garantie qu'il n'y aura pas de faille de sécurité liée à l'injection d'une variable mal contrôlé à l'intérieur de la requête.
Enfin, si tu utilises PDO, je te conseile de faire un fetchAll(PDO::FETCH_COLUMN); pour récupérer directement un tableau indexé par colonne.
Bonjour,
Merci à vous deux. J'avais pas pensé au PDO::FETCH .
Et effectivement tant que je maîtrise pas ce que je fais je sécurise un max mon code en préparant mes requête.