ThinkPHP 连接MSSQL PHP连接MSSQL

1.确定SQL装的时候用的是混合认证模式,或SQL验证模式

2.确定SQL2000装好后已打上SP4补丁

3.把“localhost”换成你的计算机名或是“127.0.0.1”

4.在PHP.ini文件里改mssql.secure_connection = On

5.查看本地MSSQL端口是不是1433,并且本机端口是否开放状态,如果端口变了相应服务地址后加“,端口号”,注意是逗号,不是冒号。

PHP连MSSQL的问题(NTWDBLIB.DLL在作怪)

而同事就可以连,他比较了ntwdblib.dll这个文件,版本都是2000.2.8.0。唯一不同的是他的机子装了MSSQL,怀疑是这个原因。

搜索了下,发现确实是这个原因。也有不少人碰到装了MSSQL就可以连远程MSSQL,没装则不行。

试验了下,发现原因还是在于NTWDBLIB.DLL这个文件。我本机是php5自带的,版本为2000.2.8.0,他也是。

在MSSQL光盘中搜索这个文件,找到NTWDBLIB.DLL,版本是2000.80.194.0。

将这个文件,Copy到php安装目录和c:\windows\system32目录下,停掉IIS或Apache。

一个Case需要使用PHP5连接MS SQL Server 2005,找了些资料自己琢磨了下,搞定了,呵呵

步骤:

1. 首先按通常做法配置好PHP5连接MS SQL Server

2. 下载正确版本的 ntwdblib.dll (2000.80.194.0),地址:  http://webzila.com/dll/1/ntwdblib.zip

3. 覆盖 apache2.2.6\bin\ntwdblib.dll

4. 覆盖 php5.2.5\ntwdblib.dll

5. 运行 SQL Server 配置管理器:SQL Server Configuration Manager,打开协议 Protocols

6. 允许命名管道 "named pipes" 和 "tcp/ip"

7. 右键点击 "tcp/ip",打开属性 Properties 标签 "IP addresses"

8. 在 TCP 动态端口 "TCP Dynamic Ports" 填入 1433

9. 重启 SQL Server、Apache和PHP

使用以下方式连接MS SQL Server 2005:

mssql_connect('localhost,1433', USERNAME, PASSWORD);

另请注意:

如果更改了默认的1433端口号,则IP地址后面加端口号,用,号隔开,不是:号,如

$linkId = mssql_connect('IP地址,端口号','用户名','密码');

其实直接把php5自带的那个ntwdblib.dll考到system32(可以尝试一下)

版权申明:本站文章均来自网络,如有侵权,请联系01056159998 邮箱:itboby@foxmail.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

猜你还会喜欢下面的内容

    无相关信息

中国领先的互联网域名及云服务提供商

为您提供域名,比特币,P2P,大数据,云计算,虚拟主机,域名交易最新资讯报道

域名注册云服务器