Nutzung des Zend_Db-Datenbank-Verbindung

Ich versuche, mir selbst beibringen das Zend Framework. Ich habe einige umfangreiche Erfahrung mit der Verwendung von custom-frameworks, aber noch nie verwendet Zend. Es ist wie der Versuch, mit einem Messer und Gabel mit den Handschuhen auf.

Habe ich das system zum laufen. Eine Datenbank-Verbindung erstellt wird, in der applition.ini-Datei-ohne Fehler.

Dem Punkt, ich bin versucht, verwenden Sie diese Verbindung an die Datenbank zur Ausführung basic SQL. Die Anwendung.ini hat sich die Zeilen:

db.adapter      = PDO_MYSQL
db.params.host  = localhost
db.params.username = cpanel_dbuser
db.params.password = 123456
db.params.dbname   = cpanel_dbname

Ich versuche, die Verbindung zu der Datenbank, in meinem /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);

Den Fehler den ich bekomme, ist:

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

Und wenn ich print_r das Config-Objekt

Zend_Config Object
(
    [_allowModifications:protected] => 
    [_index:protected] => 0
    [_count:protected] => 2
    [_data:protected] => Array
        (
            [adapter] => PDO_MYSQL
 /* ... more stuff ... */

Aus meinem Verständnis der tutorials & PDF-arbeite ich aus, wenn ich diese Verbindung funktioniert ich werde in der Lage sein, solche fantastischen amazements, wie die folgenden aus einem controller indexAction

 $data = $this->db->fetchAll(‘SELECT * FROM table’);
 foreach ($data as $row) {
      echo $row[‘table_fieldname’];
 }

Und dann zu schreiben beginnen, Modelle für die Tabellen, die ich habe.

Zu diesem Zeitpunkt, es ist eine ziemlich ernste Versuchung, Sie zu schneiden-die-Ecke-und tun dies in der Art, ich weiß schon, wie, aber, dass völlig Niederlagen der Zweck des Lernens, um die Arbeit im Rahmen.

Kann jemand die Lücke für mich (oder zeigen Sie mir eine Ressource, klar)?

InformationsquelleAutor Alex C | 2011-02-20

Schreibe einen Kommentar