|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : décembre 2004 Messages : 4 ![]() |
Bonjour,
Je désire effectuer une requête de sélection multitable dans mon contrôleur, sans forcément passer par une classe dbtable_matableXYZ en particulier. En lisant la doc de Db_Select, les exemples utilisent soit d'un objet $db déjà instancié, soit propose d'utiliser Zend_Db::factory avec des options non explicitées. Code :
mais si je veux utiliser un objet db_select, c'est à moi de récupérer tous les paramètres de connexion et de les transmettre à la factory... Y a-t-il pas un moyen plus simple d'instancier cet objet $db ? (en bref qu'est-ce que je mets à la place de ...options... pour dire de prendre les paramètres définis dans application.ini ?) D'avance merci pour votre éclairage. |
||
|
|
00
|
|
|
#2 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : novembre 2005 Messages : 8 ![]() |
Pour obtenir une connexion via Zend_Db en utilisant la factory du Zend_Db tu dois passer en premier paramètre ton adaptater (MySql, Oracle, ...) et en deuxième paramètre un tableau contenant tes informations de connexion.
Pour récupérer le $config ci dessous je t'invite à voir du coté du Zend_Config Code :
|
||
|
|
00
|
|
|
#3 | |||||
|
Membre régulier
![]() Benjamin DuboisChef de projet NTIC Inscription : février 2008 Messages : 65 ![]() |
Citation:
Si tu utilises une structure d'application standard, il existe un moyen (bizarre, mais je n'ai pas trouvé mieux) de récupérer ton adaptateur par défaut : Code :
- je n'utilise pas le fichier application.ini pour stocker les paramètres de la BDD (de toute façon, c'est pour moi un problème de conception : la base de données n'étant pas forcément utilisée tout le temps, ses paramètres de connexion ne doivent pas être chargés en permanence dans l'ensemble de l'application). - je place ces informations dans un fichier ini séparé, que je charge au besoin via un objet Zend_Config, lorsque j'ai réellement besoin de me connecter à la base. Ca me permet en outre de ne pas forcément utiliser Zend_Db. PS : tu ne devrais pas effectuer de requête directement depuis ton controlleur : l'accès aux données est de la responsabilité du modèle. Cela te permet notamment de ne pas avoir à changer ton controlleur le jour où tu décides de modifier le système de stockage de données.En plus, tu risque d'avoir à dupliquer du code, car il est beaucoup plus difficile de rendre un controlleur réutilisable qu'un modèle. |
|||||
|
00
|
Copyright © 2000-2012 - www.developpez.com