Bonjour à tous et à toutes :) , Pour un projet, je dois créer 3 zones membres. Une zone bleu. Une zone rouge. Une eszoneace verte.** Les trois espaces n'ont aucun lien hiérarchique, et les informations demandées lors de l'inscription sont totalement différentes. J'ai donc crée trois table : Bleu / Rouge / Vert Lorsqu'on se connecte à Bleu (vrai non de table : User) on a accès uniquement à zone Bleu. ... Et ensuite, je bloque, je souhaite faire une connexion sur une autre table que Bleu, mais je ne sais pas si il est possible de gérer des connexions avec login() avec des tables différentes. Est-ce quelqu'un a une idée de la méthode à utiliser, ou a déjà eu ce type d'organisation de base ? Merci, :)

8 réponses


Hum non, mais en fait, ça ne sert à rien de faire une jointure, la connexion doit être faite sur des tables différentes, en fait je souhaite vraiment séparer les utilisateurs en trois catégories bien distinctes,avec trois tables différentes, et je voulais savoir si il était possible de gérer 3 connexions sur cakephp

Merci

Personnellement, je ferais plutôt une table "users" super simple avec très peu de champ et une table, par exemple, "données" qui contiendrait les données des utilisateurs. On peut pousser un peu plus loin avec une table "configurations" qui contiendrait les "données" à intégrer selon la "couleur" des users.

Comme ça, tu utilises la connexion de CakePHP de façon classique et tes utilisateurs sont complètement paramétrables.

Hum ça complique un peu les choses pour mon client, il veut pouvoir extraire les bases, il souhaite avoir trois tables différentes par zone.
Sinon j'aurai tout balancé dans une seule table et j'aurai attribué des rôles à chaque zone ^^

Ca peut compliquer/complexifier les choses à la création/gestion/extraction des utilisateurs mais ça apporte également plus de souplesse et tu n'as plus de problème au niveau de la connexion.

Après, si tout est vraiment si cloisonné, peut être que le mieux est de faire 3 applications ?

Merci Arthur,

Les bases de données n'ont aucunes interaction entre elles, mais les vues partagent le même layout.

C'est vrai que faire trois applications pourraient résoudre le problème, mais ça rend plus complexe la gestion admin.

Je pense que vais me résoudre à faire une et même table pour tout les utilisateurs.

Concernant, ma question, il est impossible de faire un login avec plusieurs tables ? Juste par curiosité

Je ne l'ai jamais fait mais je pense que c'est possible. La configuration de la connexion peut être personnalisée donc ça doit être possible d'aller chercher une connexion valide dans 3 tables différentes. Il faut creuser le composant Auth et la personnalisation du système de connexion.

Je pense vraiment que la meilleure solution ici est une table users qui contient tous les utilisateurs et une ou plusieurs tables annexes qui vont contenir leurs informations personnelles.

Hésites pas à nous dire ce que tu auras réussi à faire ;)