Bonjour tout le monde !
Ca fait très peu de temps que j’utilise Yii, et jusqu’ici je pouvais répondre à toutes mes questions en suivant des tutos en ligne ou en lisant les messages d’autres utilisateurs … mais ça fait maintenant 2 jours (sans compter le week end bien sûr) que je suis bloquée … donc me voilà !
La situation est la suivante :
-
Chaque client que je dois gérer possède une base de données
db_assistant
+numéro-client (par exempledb_assistant1
. -
Les clients et les bases de données qui leur sont associées sont listés dans la table
clients
de la basedb_client
. -
On ne peut pas se connecter à l’application via son compte client : il faut utiliser les comptes utilisateurs dans la base de données
db_assistant
.
La connexion à l’application se fait donc ainsi :
[list=1]
[*]Le client entre son numéro client, son login et son mot de passe.
[*]Je regarde si le numéro client saisi correspond à quelque chose dans la base db_client
.
[*]Si oui, je me connecte à la base de données associée à ce client, et je regarde s’il existe un utilisateur correspondant au login saisi.
[*]Si oui, je vérifie que le mot de passe saisi correspond au mot de passe de l’utilisateur.
[*]Si oui, je connecte l’utilisateur.
[/list]
Il me faudrait donc un fichier de configuration comme ceci :
...
//On se connecte à la base de donnée recensant les clients
'db' => array(
'connectionString' => 'mysql:host=localhost;dbname=db_client',
'emulatePrepare' => true,
'username' => '*****',
'password' => '*****',
'charset' => 'utf8'
),
//On se connecte à la base du client
'dbperso'=> array(
'connectionString' => $sgbd.':host='.$host.';dbname='.$dbname,
'emulatePrepare' => true,
'username' => $utilisateur,
'password' => $pass,
'charset' => 'utf8',
'class' => 'CDbConnection'
),
...
Mon problème est : comment transmettre des valeurs depuis mon contrôleur, jusqu’au fichier de configuration ?
J’ai essayé de mettre mes valeurs dans des variables sessions entre l’étape 2 et l’étape 3, mais je n’ai pas eu beaucoup de succès ^^’