phpinfo()中未启用mySQL PDO

时间:2013-04-26 13:21:33

标签: php mysql apache phpinfo

我正在尝试设置一个本地的PHP开发环境,但是我在为PDO启用mySQL时遇到了麻烦,对于这种类型的设置来说还是比较新的......所以我不确定我可能会遗漏什么。

我没有注释:

extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo.dll
extension=php_pdo_mysql.dll

并将extension_dir设置为:

extension_dir = "C:\PHP\ext\"

此外,我已将libmysql.dll文件复制到Apache中的Bin目录,我确信我正在检查正确的php.ini文件。

当我打开phpinfo()时,我得到以下内容:

**mysql**
Active Persistent Links  0  
Active Links  0  
Client API version  5.0.27  

Directive Local Value Master Value 
mysql.allow_persistent On On 
mysql.connect_timeout 60 60 
mysql.default_host no value no value 
mysql.default_password no value no value 
mysql.default_port no value no value 
mysql.default_socket no value no value 
mysql.default_user no value no value 
mysql.max_links Unlimited Unlimited 
mysql.max_persistent Unlimited Unlimited 
mysql.trace_mode Off Off 


**mysqli**
Client API library version  5.0.27  
Client API header version  5.0.22  
MYSQLI_SOCKET  /tmp/mysql.sock  

Directive Local Value Master Value 
mysqli.default_host no value no value 
mysqli.default_port 3306 3306 
mysqli.default_pw no value no value 
mysqli.default_socket no value no value 
mysqli.default_user no value no value 
mysqli.max_links Unlimited Unlimited 
mysqli.reconnect Off Off 

**PDO**
PDO drivers  no value  

在命令行上运行php.exe -m会出现以下错误:

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\PHP\ext\php_mysql.dll' - the specified module could not be found.

我收到以上错误:

php_mysql.dll
php_pdo_mysql.dll
php_pdo.dll

如果启用sqlite,则在phpinfo()列表中显示正常。

当我转到应该使用mysql连接的页面时,我收到以下错误:

致命错误:未捕获的异常'PDOException',消息'找不到驱动程序'在C:\ Inetpub \ wwwroot \ test \ connection.php:11堆栈跟踪:#0 C:\ Inetpub \ wwwroot \ test \ connection.php(11):PDO-> __ construct('mysql:host = xxx ....','loginname','password')#1 C:\ Inetpub \ wwwroot \ test \ pagename .php(18):include('C:\ Inetpub \ wwwr ...')#2 {main}在第11行的C:\ Inetpub \ wwwroot \ test \ connection.php中抛出

使用EasyPHP进行开发。在我不得不使用mySQL之前没有问题

2 个答案:

答案 0 :(得分:0)

使用Apache的Apache和命令行是两回事:

您将libmysql放入apaches bin-folder。当您从命令行启动php时,必须也可以从那里访问libmysql,例如。当它在PATH中时。

答案 1 :(得分:0)

尝试了许多建议,但有效的建议是删除所有内容并重新开始。

摆脱WAMP并加载XAMPP现在mySQL已启动并使用PDO运行。

全部谢谢