2008-10-01 152 views
2

我已经更新的php.ini和移动激活php_mysql.dllsteps 6 and 8 here.如何在PHP中安装MySQL模块?

我得到这个错误&hellip解释;

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"

结果:没有任何变化。


我改变了的php.ini值的extension_dir的正是如此:

extension_dir = "C:\Windows\System32"

结果:在的phpinfo得多;报告,但MySQL仍然无法正常工作。


我从文件夹ç复制的文件libmysql.dll的:\ 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

结果:该网站的作品!

回答

5

正如有人说在php.ini这两个值是至关重要的。

我在php.ini中的以下内容:注意尾部斜杠 - 如果需要的话不知道 - 但它确实工作。

extension_dir = "H:\apps\php\ext\" 
extension=php_mysql.dll 

还有一点很值得确保你只需要你的机器上的php.ini的一个副本 - 我有问题,这个地方我一直在这PHP不是使用一个编辑工作php.ini文件我感到非常沮丧,直到我意识到。

此外,如果PHP是阿帕奇内运行的模块,您将需要重新启动Apache服务器,以皮卡的变化。如果你不确定,明智地在任何情况下这样做。

一个“PHP -m”从命令提示符将显示您是从INI文件加载的模块。

1

在php.ini文件中,检查扩展路径配置是否有效。

+0

见注。 – 2008-10-01 16:05:30

+0

这很糟糕,我现在无法访问我的PHO框。 我认为扩展目录必须是唯一的。试试“c:\ windows \ system32” 也可以用最后的“\”来尝试。 尝试使用“c:\\ windows \\ system32”。 – vIceBerg 2008-10-01 16:34:58

1

在一个完全不同的说明,我可能会建议WampServer?它应该让你立即开始运行Apache/PHP/MySQL。

你甚至可以在WampServer配置文件比较自己,看看您最初错在哪里。关于上述问题的extension_dir