Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法让MAMP与PDO MySQL一起工作_Mysql_Macos_Doctrine_Pdo_Mamp - Fatal编程技术网

无法让MAMP与PDO MySQL一起工作

无法让MAMP与PDO MySQL一起工作,mysql,macos,doctrine,pdo,mamp,Mysql,Macos,Doctrine,Pdo,Mamp,问题:由于驱动程序问题,条令测试应用程序无法工作 设置:MacOSX10.5.7(非服务器)、MAMP 1.7.2、条令2.2.1、PHP5.2.6 我遵循这一原则,试图在本地机器上建立一个开发环境。从web(通过MAMP)运行页面的输出显示一个空屏幕(我假设是因为错误不会通过MAMP显示)。如果我在我的测试环境(Debian Lenny)上运行该页面,那么一切都会正常工作,屏幕上会有输出 我已经想了好几个小时了,但一直没能弄明白。任何见解都值得赞赏 以下是从命令行运行时的输出 justingi

问题:由于驱动程序问题,条令测试应用程序无法工作

设置:MacOSX10.5.7(非服务器)、MAMP 1.7.2、条令2.2.1、PHP5.2.6

我遵循这一原则,试图在本地机器上建立一个开发环境。从web(通过MAMP)运行页面的输出显示一个空屏幕(我假设是因为错误不会通过MAMP显示)。如果我在我的测试环境(Debian Lenny)上运行该页面,那么一切都会正常工作,屏幕上会有输出

我已经想了好几个小时了,但一直没能弄明白。任何见解都值得赞赏

以下是从命令行运行时的输出

justingiboney$ php test.php

Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in /Applications/MAMP/htdocs/doctrine_test_site/bootstrap.php:16
Stack trace:
#0 /Applications/MAMP/htdocs/doctrine_test_site/bootstrap.php(16): PDO->__construct('mysql:dbname=fa...', '****', '****')
#1 /Applications/MAMP/htdocs/doctrine_test_site/test.php(4): require_once('/Applications/M...')
#2 {main}
thrown in /Applications/MAMP/htdocs/doctrine_test_site/bootstrap.php on line 16
下面是test.php

<?php
// test.php

 require_once('bootstrap.php');

 $conn->export->createTable('test', array('name' => array('type' => 'string')));
 $conn->execute('INSERT INTO test (name) VALUES (?)', array('jwage'));

 $stmt = $conn->prepare('SELECT * FROM test');
 $stmt->execute();
 $results = $stmt->fetchAll();
 print_r($results);

?>

PDO模块似乎没有正确安装在MAMP配置中。当运行phpinfo()时,应该有一个名为PDO的块,该块定义了启用的PDO驱动程序

我的phpinfo页面有如下块:

PDO PDO support enabled PDO drivers mysql PDO PDO支持已启用 PDO驱动程序mysql
您应该仔细检查MAMP安装是否具有所有必需的库文件。

很抱歉,没有看到这一行:来自phpinfo()PDO驱动程序for MySQL,客户端库版本5.0.41,我如何检查它是否具有所有必需的库?我将在哪里查找,我将查找什么?为了便于检测错误,您可以在php.ini文件中将error_reporting设置为E_ALL,并将errors显示为On(系统中该文件的位置应在phpinfo()输出的顶部附近指示);也许有一个错误你看不到。好吧,这表明它在连接mysql时遇到了问题。所以我把MAMP端口切换回3306,取出代码中的8889,它就工作了。谢谢。作为将来的参考,这种类型的问题更适合于ServerFault.com,一个堆栈溢出的姐妹站点。Quinn你这么聪明。。。我不知道没有你我会在哪里you@Justin吉博尼>不客气:-)
--with-pdo-mysql=shared,/Applications/MAMP/Library

PDO drivers | sqlite2, sqlite, pgsql, mysql

PDO Driver for MySQL, client library version    5.0.41
PDO PDO support enabled PDO drivers mysql