2011-08-07 44 views
1

我可以從PHP與微軟驅動程序PHP for SQL Server調用SQL Server 2008(http://www.microsoft.com/download/en/details.aspx?id=20098)但是因爲需要Sqlsvr驅動程序類來使用CakePHP和SQL Server 2008,所以我得到了驅動程序文件以下資料庫(https://github.com/revathskumar/CakePHP-sqlsrv-driver使CakePHP與SQL服務器2008一起工作

然而,以下爲database.php

<?php 
class DATABASE_CONFIG { 

    var $default = array(
    'driver' => 'sqlsvr', 
    'host' => 'localhost\EPHP', 
    'login' => 'sa', 
    'password' => 'xxxxxxx', 
    'database' => 'Blog', 
    ); 
    } 
    ?> 

我得到了下面的錯誤運行我的測試CakePHP的時候。

致命錯誤(256):的ConnectionManager :: loadDataSource - 無法導入數據源類.DboSqlsvr [CORE \蛋糕\庫\型號\ connection_manager.php,線185]

然後我看了所有的你 - can not-make-cakePHP-work-with-sql-2008 discussion(http://groups.google.com/group/cake-php/browse_thread/thread/aa6da91e842e6e9f)。現在有沒有解決辦法?

UPDATE:讓我改一下我的問題。如果有人成功地使CakePHP和SQL 2008一起工作,並告訴我他遵循的步驟,我會很感激。

+1

您正在使用哪個版本的CakePHP? – Arjan

+1

你試過這個嗎? https://github.com/cakephp/datasources – RSK

+0

Arjan,我有什麼最新版本(1.3.11)。 –

回答

2

經過一番研究,我發現這篇文章(http://book.cakephp.org/view/1652/Plugin-DataSources-and-Datasource-Drivers)。基本上,您不能將您的驅動程序文件放置在「工廠」驅動程序文件所在的目錄(\ cakephp \ cake \ libs \ model \ datasources \ dbo)中。相反,您應該將驅動程序文件放在烘焙蛋糕的以下目錄中。

your-cake-application\plugins\your-plugin-name\models\datasources\dbo 

然後你應該相應地改變你的database.php。

<?php 
class DATABASE_CONFIG { 

    var $default = array(
    'driver' => 'your-plugin-name.DboSqlsrv', 
    'host' => 'localhost\EPHP', 
    'login' => 'sa', 
    'password' => 'xxxxxxx', 
    'database' => 'Blog', 
    ); 
    } 
    ?> 

之後,我可以運行我的cakephp應用程序。

+0

我實際上遇到了與以前相同的問題。我已將'dbo_sqlsrv.php'放入'my_site \ plugins \ plugin_name \ models \ datasources \ dbo'中。我也在這篇文章中設置了'database.php'。還有什麼(代碼,外部文件等)?它仍然不適合我。我收到一個錯誤,說'SQL錯誤:一個無效的參數傳遞給sqlsrv_query'。 – musicliftsme

1

假設你已經在文件夾的應用程序/模型/數據源的數據源/ dbo_sqlsrv.php加載這樣的:

<?php 
class DATABASE_CONFIG { 

    var $default = array(
    'datasource' => 'sqlsvr', 
    'host' => 'localhost\EPHP', 
    'login' => 'sa', 
    'password' => 'xxxxxxx', 
    'database' => 'Blog', 
    ); 
    } 
    ?> 

所不同的是在「駕駛」 VS「數據源」關鍵字

+0

José,你有沒有做過這個(cakephp與SQL Server 2008)工作?不幸的是,我之前嘗試過,它不起作用。絕望之餘,我現在只是徒勞地再做了一次。 –

+0

是的,如果你一直得到相同的錯誤是因爲你的數據源放置在錯誤的位置。它位於哪裏? –

+0

我在你建議的地方有這個文件。 d:\ CakePHP的\程序\型號\數據源\ dbo_sqlsrv.php –

相關問題