配置环境的时候,PHP无法载入MySQL动态库,麻烦大家帮忙看看!

love_u_qt 2012-04-14 10:04:10
环境是:
Win XP、Apache 2.2、PHP 5.2.17、Mysql 5.5.23

安装apache和PHP的时候都没有问题,Apache解析PHP也都正常。后来我安装完了Mysql,也确实安装成功了,在命令行访问Mysql都是成功的,3306端口也确实是Mysql在监听:
TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING 3296
[mysqld.exe]

于是我在在php.ini做了如下设置:

extension_dir = "D:/MyEnv/php5/ext"

extension=php_bz2.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo.dll


重启Apache后用mysql_connect()做测试,但它总是报Call Undifined Function。
然后我就用phpinfo()查看了一下,发现没有载入Mysql库,我又琢磨了好半天都没成功~~~
我的步骤应该没有问题啊,为什么载入不了Mysql库呢??

谢谢大家!
...全文
228 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
改一下昵称 2012-04-15
  • 打赏
  • 举报
回复
其实我也一直不清楚phpini为什么会在windows目录下,为什么又要拷贝到system32下。只是别人怎么说我就怎么做,错了才再想办法
找了一会找到参考说明:
ini位置说明:http://us2.php.net/manual/zh/configuration.file.php
完整的配置过程:
http://www.impng.com/web-dev/how-to-install-apache-php-mysql.html

至于你问的为什么要拷贝到system目录下,我没找到。你再看看其他人
黄袍披身 2012-04-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

引用 1 楼 的回复:
1.确认扩展的路径正确
2.把php安装目录中的“libmysql.dll、php5ts.dll”复制到 C:/windows/system32 目录
3.把 php.ini 复制到 C:/windows 目录
重启apache

谢谢你!!!成功了!
但能帮我解释下为什么复制“libmysql.dll、php5ts.dll”吗?我看的相关教程上都没有这一……
[/Quote]

你装的八成是什么ghost之类的系统吧?
xuzuning 2012-04-15
  • 打赏
  • 举报
回复
如果你的 httpd.conf 中已经设置了 PHPIniDir,并指向了正确的路径
在这种情况下还要拷贝文件的话,说明你安装的 apache 有问题
love_u_qt 2012-04-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
phpinfo 显示的php.ini文件是否是你修改过的文件?
php的扩展目录内是否存在需要用到的dll文件?
php.ini文件内ext目录路径是否正常?
[/Quote]
1、是的。而且当我修改php.ini的时候会影响到phpinfo()显示的内容。
2、有php_mysql.dll等相关文件。
3、嗯,是正确的。

就是按照“dream1206”说的把那两个文件复制到C:/windwos/system32下就行了,但不知道为什么~
love_u_qt 2012-04-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
引用 1 楼 的回复:
1.确认扩展的路径正确
2.把php安装目录中的“libmysql.dll、php5ts.dll”复制到 C:/windows/system32 目录
3.把 php.ini 复制到 C:/windows 目录
重启apache

谢谢你!!!成功了!
但能帮我解释下为什么复制“libmysql.dll、php5ts.dll”吗?我看的相关教程上都没有这一步~……
[/Quote]
再补充一下我刚才的问题,因为我在phpinfo()页面里看到有两个参数:

Configuration File (php.ini) Path C:\WINDOWS
Loaded Configuration File D:\MyEnv\php5\php.ini

这两个不都是读取php.ini吗?那到底是读哪个呢?
love_u_qt 2012-04-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
1.确认扩展的路径正确
2.把php安装目录中的“libmysql.dll、php5ts.dll”复制到 C:/windows/system32 目录
3.把 php.ini 复制到 C:/windows 目录
重启apache
[/Quote]
谢谢你!!!成功了!
但能帮我解释下为什么复制“libmysql.dll、php5ts.dll”吗?我看的相关教程上都没有这一步~
另外我没有把php.ini复制到c:/windows下,但也成功了。如果复制过去的话,那apache是读取httpd中指定的“PHPIniDir”参数的值,还是读取c:/windows下的php.ini呢?
love_u_qt 2012-04-15
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]
php.ini为什么会在windows目录下,为什么又要拷贝到system32下

这是一个操作系统的默认搜索路径问题
如果我们在某个目录下面执行一个命令 command,于是操作系统就在这个目录下查找 command 是否存在,如存在就执行(下同)否则就到 %system32% 去查找,如果还是不存在,就沿环境变量 path 给出的范围依次查找,当查了一遍还没找到,就会报错 command……
[/Quote]
嗯,我按照你说的这个顺序,先把system32下的两个文件删除了,然后把“D:/MyEnv/php5;”加入到环境变量的PATH中,然后重启apache,但是还是不行。。。
xuzuning 2012-04-15
  • 打赏
  • 举报
回复
php.ini为什么会在windows目录下,为什么又要拷贝到system32下

这是一个操作系统的默认搜索路径问题
如果我们在某个目录下面执行一个命令 command,于是操作系统就在这个目录下查找 command 是否存在,如存在就执行(下同)否则就到 %system32% 去查找,如果还是不存在,就沿环境变量 path 给出的范围依次查找,当查了一遍还没找到,就会报错 command 不存在

既然查找可能会遍历整个硬盘,那就不如预先将需要的文件放在查找链之中,并经可能的靠前了
love_u_qt 2012-04-15
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]
如果你的 httpd.conf 中已经设置了 PHPIniDir,并指向了正确的路径
在这种情况下还要拷贝文件的话,说明你安装的 apache 有问题
[/Quote]
嗯PhpIniDir肯定是正确的,因为apache已经可以解析PHP了。
你所指的文件是“libmysql.dll、php5ts.dll”这两个文件吗?可是我在安装apache的时候也是一切正常啊,而且可以正常启动、停止apache。

[Quote=引用 7 楼 的回复:]
引用 3 楼 的回复:

引用 1 楼 的回复:
1.确认扩展的路径正确
2.把php安装目录中的“libmysql.dll、php5ts.dll”复制到 C:/windows/system32 目录
3.把 php.ini 复制到 C:/windows 目录
重启apache

谢谢你!!!成功了!
但能帮我解释下为什么复制“libmysql.dll、php5ts.dll”吗?……
[/Quote]
嗯可能是装的GHOST,和这个有关系???

[Quote=引用 8 楼 的回复:]
其实我也一直不清楚phpini为什么会在windows目录下,为什么又要拷贝到system32下。只是别人怎么说我就怎么做,错了才再想办法
找了一会找到参考说明:
ini位置说明:http://us2.php.net/manual/zh/configuration.file.php
完整的配置过程:
http://www.impng.com/web-dev/how-to-install-……
[/Quote]
嗯非常感谢你啊!!!
黄袍披身 2012-04-14
  • 打赏
  • 举报
回复
phpinfo 显示的php.ini文件是否是你修改过的文件?
php的扩展目录内是否存在需要用到的dll文件?
php.ini文件内ext目录路径是否正常?
改一下昵称 2012-04-14
  • 打赏
  • 举报
回复
1.确认扩展的路径正确
2.把php安装目录中的“libmysql.dll、php5ts.dll”复制到 C:/windows/system32 目录
3.把 php.ini 复制到 C:/windows 目录
重启apache

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧