我更新了 php.ini 并移动 php_mysql.dll ,如steps 6 and 8 here.
中所述我收到此错误...
Fatal error: Call to undefined function mysql_connect() in C:\inetpub...
MySQL没有出现在我的 phpinfo; 报告中。
我已经从
更新了 c:\ Windows \ php.ini 文件; Directory in which the loadable extensions (modules) reside. extension_dir = "./"
到
; Directory in which the loadable extensions (modules) reside. extension_dir = ".;c:\Windows\System32"
结果:没有变化。
因此我更改了extension_dir的 php.ini 值:
extension_dir = "C:\Windows\System32"
结果:在 phpinfo; 报告中有更多内容,但MySQL仍无效。
我将文件 libmysql.dll 从文件夹 C:\ php 复制到文件夹 C:\ Windows \ System32 和 C :\ Windows下
结果:没有变化。
我停了并且重新启动了IIS 。
结果:代之以新的不同错误!
Warning: mysql_connect() [function.mysql-connect]: Access denied for user '...'@'localhost' (using password: YES) in C:\inetpub\... error in query.
Fatal error: Call to a member function RecordCount() on a non-object in C:\inetpub\...
我在网站上找到了几个.php文件,我必须设置变量:
$db_user $db_pass
结果:网站有效!
答案 0 :(得分:5)
正如其他人所说,php.ini中的这两个值至关重要。
我的php.ini中有以下内容:请注意尾部斜杠 - 不确定是否需要 - 但确实有效。
extension_dir = "H:\apps\php\ext\"
extension=php_mysql.dll
另外值得确保你机器上只有一个php.ini的副本 - 我遇到过这个问题,我一直在编辑一个php没有使用的php.ini文件而且非常沮丧直到我意识到
此外,如果php作为apache中的模块运行,则需要重新启动apache服务器以获取更改。如果你不确定的话,明智地做到这一点。
来自cmd提示符的“php -m”将显示从ini文件加载的模块。答案 1 :(得分:1)
在php.ini文件中,检查扩展路径配置是否有效。
答案 2 :(得分:1)
您还需要在php.ini中启用extension = php_mysql.dll选项。另外,请确保该文件位于您设置的extension_dir中。
您可以在以下网址了解更多信息:
答案 3 :(得分:1)
在完全不同的说明中,我可以建议WampServer吗?它应该能够立即启动并运行Apache / PHP / MySQL安装。
您甚至可以将WampServer配置文件与您自己的配置文件进行比较,以查看您最初的错误位置。