PHP连接SQLServer2005 的问题解决方法

yipeiwu_com6年前PHP代码库
后来火了,在虚拟机装上WIN2003一试,加载MSSQL模块是没问题了,但是用mssql_connect("localhost", "sa", "");却怎么也连不上数据库,后来上网查了很多资料,才终于搞定了:


环境:IIS6.0+PHP5+SQL Server2005

SQL Server安装的时候选择混合登陆模式,即windows和sql server身份验证模式。

步骤:

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

PHP.ini 里面打开 extension=php_mssql.dll 选项 (就是把前面的 ; 号去掉)

2. 下载正确版本的 ntwdblib.dll (2000.80.194.0)
3. 覆盖 c:windows\system32\ntwdblib.dll
4. 覆盖 php\ntwdblib.dll(有时候完成了这一步也不成功的话,就把PHP所依赖的php5ts.dll放到system32目录下)
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、IIS和PHP

10.用主机名+端口号来连接的,mssql_connect("localhost,1433", "sa", "");(我试了一下,不用也行)


网上有些人说,要把php.ini配置文件里的mssql.secure_connection = Off 改成on,结果我改了之后,试了好久都连接不上SQL Server,后来尝试把mssql.secure_connection = Off 改回成Off之后,终于连上了。

相关文章

php变量与数组相互转换的方法(extract与compact)

本文实例讲述了php变量与数组相互转换的方法。分享给大家供大家参考,具体如下: 在php中数组与变量相互转换我们可使用到extract或compact函数,这里就来给大家分析一下这两个函...

利用php实现禁用IE和火狐的缓存问题

利用php实现禁用IE和火狐的缓存问题

在网速找了好多方法,最终还是解决了 其实最简单的方法是在头部加<meta>标签 <META HTTP-EQUIV="Cache-Control" CONTENT="no...

php依赖注入知识点详解

引言 你知道什么是依赖注入吗?依赖注入(DI)的概念虽然听起来很深奥,但是如果你用过一些新兴的php框架的话,对于DI一定不陌生,因 为它们多多少少都用到了依赖注入来处理类与类之间的依赖...

PHP 数组遍历方法大全(foreach,list,each)

在PHP中数组分为两类: 数字索引数组和关联数组。 其中数字索引数组和C语言中的数组一样,下标是为0,1,2… 而关联数组下标可能是任意类型,与其它语言中的hash,map等结构相似。...

php 判断网页是否是utf8编码的方法

//判断编码复制代码 代码如下:$encode = mb_detect_encoding($q, array('GB2312','GBK','UTF-8'));echo $encode....