您的位置:首页 > 编程语言 > PHP开发

php5.2加载mssql 模块失败

2013-07-26 09:45 162 查看
php5.2 加载mssql 模块失败
由于公司用到mssql 2000 ,同时需要到php 去连接MSSQL2000 。从php5.3开始,这个接口已经是微软自己在做了,要用微软自己提供的接口去连接MSSQL , 那必然要修改代码,开发不愿意。php5.2加载模块的时候一直加载不上,也未提示报错,phpinfo 函数查看的时候怎么也没有mssql 这个模块。
大家都知道,winserver 有很多不确定性,就在刚才终于搞定了。
写一下排错的过程,首先检查php.ini 里面extension=php_mssql.dll,extension=php_pdo_mssql.dll,extension=php_pdo.dll是否 被注释掉
然后搜索这几个dll 找到复制到system32 下面

然后检查这几个模块依赖的dll 文件在system32 下是否找到
php5ts.dll

ntwdblib.dll
msvcrt.dll
kernel32.dll
php5ts.dll所依赖的dll
kernel32.dll
advapi32.dll
msvcr71.dll
user32.dll
netapi32.dll
没有就想办法copy 到c:\system32 目录下面去
特别要注意的是ntwdblib.dll 这个文件 php5 安装包里面默认是2000.2.80
这个可能连不上 2000需要的是2000.80.1994 一般安装完SQL 2000 这个dll 库在系统库里面是可以找得到的,搜索一下,没有的话去别的机器上拷贝一个也行。
如果是64位系统的话可能还要注意 ntwdblib.dll 在SYswo64 目录下一定要存在,否则也会加载不了的。最先我也是只复制到system32 目录下,可是怎么都加载不起来。 这些检查工作做好后,重启IIS 或者apache 通过phpinfo 函数就可以看到mssql 模块了
方便大家 找ntwdblib.dll 文件 ,在附件上传了这个dll

本文出自 “没有如果” 博客,请务必保留此出处http://notany.blog.51cto.com/4212099/1257737
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: