À l'aide d'un Zend_Db connexion de Base de données
Je suis en train de m'enseigner le Zend Framework. J'ai une certaine expérience étendue en utilisant des cadres, mais n'ont jamais utilisé de Zend. C'est comme essayer d'utiliser un couteau et une fourchette avec des mitaines sur.
J'ai un système en place et en cours d'exécution. Une connexion de base de données est créée dans le applition.fichier ini sans erreurs.
Le point que je suis à l'est d'essayer d'utiliser cette connexion à la base de données pour exécuter SQL de base. L'application.ini a les lignes:
db.adapter = PDO_MYSQL
db.params.host = localhost
db.params.username = cpanel_dbuser
db.params.password = 123456
db.params.dbname = cpanel_dbname
Je suis en train d'essayer de se connecter à la base de données dans mon /public/index.php
$config = new Zend_Config_Ini(APPLICATION_PATH .
'/configs/application.ini', 'production');
$application->db = Zend_Db::factory($config->db);
Zend_Db_Table::setDefaultAdapter($db);
L'erreur que j'obtiens est:
Fatal error: Uncaught exception 'Zend_Db_Exception' with message 'Adapter name must be specified in a string' in /home/path/library/Zend/Db.php:226
Stack trace:
#0 /home/path/public/index.php(32): Zend_Db::factory(Array)
#1 {main} thrown in /home/path/library/Zend/Db.php on line 226
Et si je print_r l'Objet de Config
Zend_Config Object
(
[_allowModifications:protected] =>
[_index:protected] => 0
[_count:protected] => 2
[_data:protected] => Array
(
[adapter] => PDO_MYSQL
/* ... more stuff ... */
À partir de ma compréhension de l'tutoriels & PDF, je travaille à partir, si je peux obtenir cette connexion fonctionne bien, je vais être en mesure de faire une telle fantastique amazements comme suit à partir de l'intérieur d'un contrôleur indexAction
$data = $this->db->fetchAll(‘SELECT * FROM table’);
foreach ($data as $row) {
echo $row[‘table_fieldname’];
}
Et puis commencez à écrire des modèles pour les tables que j'ai.
À ce point, il y a de très graves à la tentation de couper le coin et de le faire de la façon que je sais déjà comment, mais qui va à l'encontre de l'objectif de l'apprentissage à l'œuvre dans le cadre.
Quelqu'un peut-il combler l'écart pour moi (ou m'indiquer une ressource qui peut éclaircir ce point)?
OriginalL'auteur Alex C | 2011-02-20
Vous devez vous connecter pour publier un commentaire.
Dans l'application.ini fichier dans le répertoire de configuration ne
et quand et où vous avez besoin d' $db viens de faire
c'est la meilleure façon de le faire.
OriginalL'auteur Mr Coder
OriginalL'auteur dev verma
Si je ne me souviens pas de mal, les cartes sont sensibles à la casse. Vous devez utiliser
Pdo_Mysql
. L'exception que vous recevez ne semble pas être lié à ce bien.OriginalL'auteur Franco