我在许多地方看到过这个错误,但确切的情况。 我在运行蛋糕烘焙控制台时遇到此错误,正好在选择C“controller”然后选择默认数据库配置
之后我通过Virtualbox访问Ubuntu 10.10 我正在使用xampp - 并通过命令apt-get install cakephp
安装了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
答案 0 :(得分:4)
您的问题很可能是某些Linux发行版对于Apache PHP和PHP-CLI有不同的php.ini,看来你的PHP-CLI(蛋糕会使用哪个)没有启用mysql_ *函数
要修复,您需要找到PHP CLI的php.ini并取消注释包含mysql_ * lib的行。应该像“extension = mysql.so”。要查找php.ini的位置,请在命令行上运行php -r 'phpinfo();'
并滚动到顶部以查看php.ini的位置。
答案 1 :(得分: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。)
答案 2 :(得分:0)
人们通常会错过的另一件事是设置扩展目录本身的路径。
例如,查看another thread处的ini
文件。他已取消评论该行extension=php_mysql.dll
,但未设置相应的extension_dir
。
您需要取消注释或添加此行:
extension_dir = "ext"
其中ext
是扩展目录的路径。
答案 3 :(得分:-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)。否则,您可以以任何方式设置配置文件路径