2012-09-09 43 views
1

我试图在本地主机上使用PDO。我在OSX 10.7.4上运行MAMP。MAMP上的PDOException“找不到驱动程序”

我检查过phpinfo(),并且据我所见我应该没事。

enter image description here

我检查了php.ini中看到 “扩展= p​​do_mysql.so” 其实注释。

我读过一些是我不得不使用以下内容制作文件PROJECTFOLDER/config/parameters.ini,所以我做了,但没有运气。 (改变它反映了我事业的设置)

database_driver = pdo_mysql 
database_host  = localhost 
database_port  = 
database_name  = databasename 
database_user  = msqlusername 
database_password = mysqlpassword//if not make blank 

mailer_transport = smtp 
mailer_host  = localhost 
mailer_user  = 
mailer_password = 

locale   = en 

secret   = ThisTokenIsNotSoSecretChangeIt 

任何想法,我怎么能得到PDO和运行?

顺便说一句,我用下面的代码进行连接:

try { 
    $host = 'localhost'; 
    $dbname = 'ifjernsyn'; 
    $user = 'root'; 
    $pass = 'root'; 

    # MS SQL Server and Sybase with PDO_DBLIB 
    $DBH = new PDO("mssql:host=$host;dbname=$dbname, $user, $pass"); 
    $DBH = new PDO("sybase:host=$host;dbname=$dbname, $user, $pass"); 

    # MySQL with PDO_MYSQL 
    $DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass); 

    # SQLite Database 
    $DBH = new PDO("sqlite:my/database/path/database.db"); 
} 
catch(PDOException $e) { 
    echo $e->getMessage(); 
} 

回答

1

所以没有mssqlsybase的驱动程序。

您需要PDO_DBLIB才能访问Microsoft SQL Server和Sybase数据库。

+1

要么我没有成功安装它,否则这不是答案。 我在http://www.ziqijin.com/?p=60上运行chmod + x并将它放在/Applications/MAMP/bin/php/php5.3.6/lib/php/extensions/no -debug-非ZTS-20090626。然后,我去了文件 - >编辑模板 - > php-> php 5.3.6 php.ini在MAMP Pro中,并在其他扩展声明后创建了一个扩展名为= pdo_dblib.so的新行。然后我重新启动了MAMP,但它仍然不起作用。 – AndHeiberg

+0

我不确定是否有可能取消接受答案,但这可能是您在回答此问题时最好的选择,或者可能会重新提出答案?我与最新的MAMP有同样的问题。 –

相关问题