2011-02-10 126 views
5

我在很多地方看过这个错误,但确切的情况。 我一边跑蛋糕烘焙控制台,究竟选择C“控制器”后,然后选择默认的数据库配置如何解决这个错误“PHP致命错误:调用未定义的函数mysql_query()”在蛋糕烘焙控制台

我通过VirtualBox的 我在Ubuntu 10.10我使用的XAMPP得到这个错误 - 并通过安装CakePHP的命令的apt-get安装CakePHP的

这里是

Use Database Config: (default/test) 
[default] > 
PHP Fatal error: Call to undefined function mysql_query() in /usr/share/php/cake/libs/model/datasources/dbo/dbo_mysql.php on line 588 

Fatal error: Call to undefined function mysql_query() in /usr/share/php/cake/libs/model/datasources/dbo/dbo_mysql.php on line 588 
+2

您在标题中引用的错误与正文中的错误不同。 – 2011-02-10 08:00:07

+0

你是对的..我粘贴错误的代码..谢谢 – msheshtawy 2011-02-10 08:27:28

回答

4

你的问题更可能是一些Linux发行版有不同的php.ini的为Apache和PHP和PHP-CLI,看来你的PHP错误-CLI(蛋糕面包师将使用)不具有mysql_ *功能启用。

要解决此问题,您需要找到PHP CLI的php.ini,并取消注释包含mysql_ * lib的行。应该像“extension = mysql.so”一样。要找到php.ini的位置,请在命令行上运行php -r 'phpinfo();'并滚动到顶部以查看php.ini的位置。

-1

我使用了Ubuntu 10.04和11.04,并且面临着相当长时间以来一直令人讨厌的相同障碍,因为我想使用某些解决方案的烘烤。

要解决它,你可以打开一个终端,并在此处键入:

php -i | grep 'Configuration File' 

这将产生这样的:

Configuration File (php.ini) Path => /usr/local/lib

好和令人惊讶的是,这不是保持默认路径你php.ini文件,这相当于/etc/php5/cli/

现在你可以简单地复制你的php.ini转换成/usr/local/lib或查看如何修复配置文件路径。

我假设你已安装php5-pgsql(使用postgres)或php5-mysql(使用MySql)。否则,你可以设置你的配置文件的路径以任何方式

1

重新安装的伎俩对我来说:

sudo apt-get remove php5-common 
sudo apt-get install --reinstall php5-mysql 
sudo apt-get install --reinstall php5-cli 

(注:我的是现场或系统关键PHP安装 - 我只是想以获得phpsh与一些mysql代码工作。ymmv。)

0

人们通常错过的另一件事是设置扩展目录本身的路径。

例如,请查看ini文件another thread。他已经取消注释extension=php_mysql.dll,但没有设置合适的extension_dir

需要使用此行的注释去掉,或在补充道:

extension_dir = "ext" 

其中ext是路径扩展目录。

相关问题