Zend Framework:未定义的类常量'MYSQL_ATTR_INIT_COMMAND'

时间:2010-03-24 18:07:16

标签: windows zend-framework

你可能已经知道我从之前的问题中从ubuntu切换到了windows。我正在研究ubuntu上的Zend Framework,现在在windows中处理同一个项目。由于这种转换,我在Windows中遇到了一些问题,这在ubuntu中没有发生。

现在,当我进入登录页面时,我在firebug控制台中出现以下错误:

<b>Fatal error</b>:  Undefined class constant 'MYSQL_ATTR_INIT_COMMAND' in <b>C:\wamp\www\vcred\library\Zend\Db\Adapter\Pdo\Mysql.php</b> on line <b>93</b><br />

你们是否知道这是什么类型的错误以及解决方案是什么?

我对数据库有以下配置。

resources.db.adapter = "Pdo_Mysql"
resources.db.params.host = "localhost"
resources.db.params.username = "root"
resources.db.params.password = ""
resources.db.params.dbname = "test"
resources.db.params.charset = "utf8"

由于

4 个答案:

答案 0 :(得分:3)

我在PHP 5.2.6中遇到了同样的错误,而我所要做的只是打开 php.ini (例如在Windows上: C:\ Windows \ php .ini ,或在Ubuntu: /etc/php5/apache2/php.ini 或sg。这样的文本编辑器中,并且从以下行中删除分号

;extension=php_pdo_mysql.dll

因此,在php.ini中看起来像这样:

extension=php_pdo_mysql.dll

这解决了我的问题。

答案 1 :(得分:2)

这看起来与PHP的bugtracker上的这个错误相关: Bug #47224 MYSQL_ATTR_INIT_COMMAND is no longer available

它似乎已在SVN中修复 - 但可能不在您使用的PHP版本中?


引用其中一条评论:

  

[2009-07-02 06:43 UTC] mg at artigo   dot pl
临时解决方案是   使用INT值(1002)而不是   恒定。

这可能是一个临时解决方案,直到您安装新版本的PHP,其中修复了错误?

答案 2 :(得分:1)

看起来不久前在SVN中修复了Windows bug in PHP 5.3。您可能希望尝试更新到最新的PHP版本,以查看问题是否仍然存在。

答案 3 :(得分:0)

我在debian6上遇到同样的错误,当我还没有安装php-mysql时,我只是安装了这个,就像这样

apt-get install php5-mysql
/etc/init.d/apache2 restart

我只是在这里添加它,以防其他有相同问题,为他们保存几分钟的研究。