Machen CakePHP-arbeiten mit SQL server 2008
Kann ich rufen Sie SQL server 2008 von PHP mit Microsoft-Treiber für PHP für SQL Server Aber als Sqlsvr-Treiber-Klasse ist erforderlich, um CakePHP mit SQL server 2008, ich habe die Treiber-Datei von folgende repository.
Jedoch, beim laufen meine test cakephp mit folgenden database.php
<?php
class DATABASE_CONFIG {
var $default = array(
'driver' => 'sqlsvr',
'host' => 'localhost\EPHP',
'login' => 'sa',
'password' => 'xxxxxxx',
'database' => 'Blog',
);
}
?>
Bekam ich folgende Fehlermeldung:
Fatal Error (256): ConnectionManager::loadDataSource - Nicht importieren, die DataSource-Klasse .DboSqlsvr [CORE\cake\libs\model\connection_manager.php, line 185]
Dann habe ich gelesen das alle du-nicht-machen-cakePHP-work-with-sql-2008-Diskussionen. Gibt es eine Auflösung, die von heute?
AKTUALISIEREN: Lassen Sie mich meine Frage anders formulieren. Ich würde mich freuen, wenn jemand erfolgreich gemacht CakePHP-arbeiten mit SQL 2008 und mir sagen, das Verfahren folgte er, das zu tun.
- Welche version von CakePHP verwendest du?
- Haben Sie versucht das? github.com/cakephp/datasources
- Arjan, ich habe auch immer die neueste version (1.3.11).
- RSK yup, das ist das erste, was ich Tat und bekam den gleichen Fehler.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nach einigen Forschung, fand ich diesen Artikel ( http://book.cakephp.org/view/1652/Plugin-DataSources-and-Datasource-Drivers). Im Grunde, Sie können nicht legen Sie Ihre Treiber-Datei in das Verzeichnis ( \cakephp\Kuchen\libs\model\datasources\dbo), wo die "Fabrik" - Treiber-Dateien befinden. Stattdessen sollten Sie legen Sie die Treiber-Datei im folgenden Verzeichnis Ihrer gebackenen Kuchen.
Dann sollten Sie Ihre database.php in der config entsprechend.
Danach konnte ich meine cakephp-app.
dbo_sqlsrv.php
immy_site\plugins\plugin_name\models\datasources\dbo
. Ich habe auch einrichtendatabase.php
wie Sie in diesem Beitrag. Gibt es sonst noch etwas (code, externe Dateien, etc.)? Es funktioniert immer noch nicht für mich. Ich erhalte eine Fehlermeldung, die sagtSQL Error: An invalid parameter was passed to sqlsrv_query
.Vorausgesetzt, Sie haben die datasources in den Ordner app/model/datasource/dbo_sqlsrv.php laden Sie es wie folgt:
Der Unterschied ist in der "driver' vs 'datasource' - Schlüsselwort