Hallo zusammen,
habe versucht die erste Yii-Anwendung zu erstellen und es funktionierte soweit auch alles. Nur wenn ich den Connect von der Sqlite auf eine MySql DB umstelle funktioniert es nicht mehr. Bei dem Befehl "model User" kommt dann so etwas:
>> model User
exception 'CDbException' with message 'CDbConnection failed to open the DB connection: could not find driver' in /Applications/MAMP/htdocs/yii-1.0.3.r780/framework/db/CDbConnection.php:250
Ich habe ein Mamp im Application-Ordner installiert und im htdocs-Ordner das Yii Framework abgelegt. Alles auf OS X Leopard 10.5.
Habe mir schon diverse Meldungen zu diesem Thema angeschaut, z.B. fehlende PDO Treiber - werden bei mir von phpinfo aber als vorhanden gemeldet.
Ich freue mich über jeden Tipp.
Danke, Lutz
Page 1 of 1
Connect mit MySql funktioniert nicht
#2
Posted 24 March 2009 - 02:24 PM
Hallo Lutz,
wie sieht denn dein Connection-String in der config/main.php genau aus?
Des Weiteren könntest du in der yiic shell mal folgendes eingeben und schauen, ob mysql dabei ist:
Gruß,
yoshi
wie sieht denn dein Connection-String in der config/main.php genau aus?
Des Weiteren könntest du in der yiic shell mal folgendes eingeben und schauen, ob mysql dabei ist:
print_r(PDO::getAvailableDrivers());
Gruß,
yoshi
#3
Posted 24 March 2009 - 02:52 PM
Hallo yoshi,
hier das Ergebnis deines Befehls:
Array
(
(0] => sqlite2
[1] => sqlite
)
Wundert mich etwas denn phpinfo sagt:
PDO support enabled
PDO drivers sqlite2, sqlite, pgsql, mysql
und
pdo_mysql
PDO Driver for MySQL, client library version 5.0.41
Hast du dazu eine Idee?
Gruß,
Lutz
hier das Ergebnis deines Befehls:
Array
(
(0] => sqlite2
[1] => sqlite
)
Wundert mich etwas denn phpinfo sagt:
PDO support enabled
PDO drivers sqlite2, sqlite, pgsql, mysql
und
pdo_mysql
PDO Driver for MySQL, client library version 5.0.41
Hast du dazu eine Idee?
Gruß,
Lutz
#4
Posted 25 March 2009 - 06:44 AM
Das ist schon komisch...
Du könntest mal deine php.ini checken, ob die extension dort nicht kommentiert ist, aber dann würde sie auch in phpinfo() eigentlich nicht angezeigt.
Du könntest evtl. noch ausprobieren sie mal manuell nachzuladen. Dazu in der yiic shell
Entweder er sagt nix, dann check nochmal getAvailableDrivers() ob es nun dabei ist oder er sagt, dass das Modul bereits geladen wurde.
Hoffe es hilft
EDIT:
Hätte ich ja fast vergessen: http://www.yiiframew...doc/cookbook/7/
Das wäre wohl ein guter Grund für das beschriebene Verhalten!
Du könntest mal deine php.ini checken, ob die extension dort nicht kommentiert ist, aber dann würde sie auch in phpinfo() eigentlich nicht angezeigt.
Du könntest evtl. noch ausprobieren sie mal manuell nachzuladen. Dazu in der yiic shell
dl('pdo_mysql.so'); ausführen (die Datei müsste es glaub ich sein, ich hab windoof und da sind es DLL's).Entweder er sagt nix, dann check nochmal getAvailableDrivers() ob es nun dabei ist oder er sagt, dass das Modul bereits geladen wurde.
Hoffe es hilft
EDIT:
Hätte ich ja fast vergessen: http://www.yiiframew...doc/cookbook/7/
Das wäre wohl ein guter Grund für das beschriebene Verhalten!
#6
Posted 25 March 2009 - 04:40 PM
Hallo,
und danke für die Hilfe. Die Tipps haben mir weiter geholfen. Habe rausbekommen das die Extensions für die mysql-Unterstützung im Pfad /usr/lib/php/extensions/no-debug-non-zts-20060613/ gesucht wurden. Dort sind aber keine entsprechenden Dateien vorhanden. Da ich auf die schnelle nicht herausgefunden habe wo ich diesen Pfad umbiegen kann, habe ich die entsprechende Datei (pdo_mysql.so) dort hin kopiert und dann von Hand in der Shell nachgeladen. Nun funktioniert es - versuche aber noch zu ergründen warum meine Installation hier so komisch ist.
Nochmals danke für die Unterstützung und viele Grüße,
Lutz
und danke für die Hilfe. Die Tipps haben mir weiter geholfen. Habe rausbekommen das die Extensions für die mysql-Unterstützung im Pfad /usr/lib/php/extensions/no-debug-non-zts-20060613/ gesucht wurden. Dort sind aber keine entsprechenden Dateien vorhanden. Da ich auf die schnelle nicht herausgefunden habe wo ich diesen Pfad umbiegen kann, habe ich die entsprechende Datei (pdo_mysql.so) dort hin kopiert und dann von Hand in der Shell nachgeladen. Nun funktioniert es - versuche aber noch zu ergründen warum meine Installation hier so komisch ist.
Nochmals danke für die Unterstützung und viele Grüße,
Lutz
#7
Posted 26 March 2009 - 06:28 AM
Hi,
na dann ist zumindest schonmal klar, woran es lag.
Kleiner Tipp noch:
wenn du in der yiic shell
Gruß
na dann ist zumindest schonmal klar, woran es lag.
Kleiner Tipp noch:
wenn du in der yiic shell
echo php_ini_loaded_file();eingibst, bekommst du den Pfad zu der richtigen Ini-Datei (die gerade von PHP CLI verwendet wird) und in der INI findest du die Direktive 'extension_dir'. Diesen Pfad kannst du auf dein eigentliches Extension-Verzeichnis "umbiegen", dann sollte eigentlich alles funktionieren...
Gruß
#8
Posted 27 March 2009 - 04:45 AM
Hallo yoshi,
es lag wohl an der von Apple schon gelieferten PHP Version. Dieser Thread http://www.yiiframew....php?topic=17.0 hat mir auch noch weiter geholfen.
Danke noch mal,
Lutz
es lag wohl an der von Apple schon gelieferten PHP Version. Dieser Thread http://www.yiiframew....php?topic=17.0 hat mir auch noch weiter geholfen.
Danke noch mal,
Lutz
Share this topic:
Page 1 of 1

Help















