【问题标题】:PDOException "could not find driver" on MAMPMAMP 上的 PDOException“找不到驱动程序”
【发布时间】:2012-09-02 13:04:29
【问题描述】:

我正在尝试在我的本地主机上使用 PDO。我在 OSX 10.7.4 上运行 MAMP。

我检查了 phpinfo(),据我所知应该没问题。

我检查了 php.ini,发现“extension=pdo_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();  
} 

【问题讨论】:

    标签: php pdo mamp


    【解决方案1】:

    所以没有mssqlsybase的驱动。

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

    【讨论】:

    • 要么我没有成功安装它,要么这不是答案。我在ziqijin.com/?p=60 下载了它,在上面运行 chmod +x 并将它放在 /Applications/MAMP/bin/php/php5.3.6/lib/php/extensions/no-debug-non-zts-20090626 中。然后我在 MAMP Pro 中转到 file->edit template->php->php 5.3.6 php.ini 并在其他扩展声明之后用 extension=pdo_dblib.so 创建了一个新行。然后我重新启动了 MAMP,但它仍然无法正常工作。
    • 我不确定是否可以不接受答案,但这可能是您回答这个问题的最佳选择,或者可能是重新提问?我在使用最新的 MAMP 时遇到了同样的问题。
    猜你喜欢
    • 2016-09-03
    • 2022-01-23
    • 2017-06-07
    相关资源
    最近更新 更多