更多php文章请阅读
本来我的PHP连接的是SQL2000,呵呵,我知道大多数人都用MYSQL。处于对技术的狂热,我决定改用PHP5+SQLServer2005,谁知道,开局不顺,竟然连接不上,甚至觉得PHP5是胎里带不能连接SQL2005,但又不死心,捣腾了好几天,MSSQL模块死活也加载不上,后来在虚拟机上安装了WIN2003测试了一下,终于连接上了,加载MSSQL模块是没问题了,但是用mssql_connect("localhost", "sa", "")仍然连不上数据库,无奈之余上网查资料,终于搞定,说下经验:
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和php\ntwdblib.dll(保险期间请把PHP所依赖的php5ts.dll放到system32目录下)
4. 运行 SQL Server 配置管理器:SQL Server Configuration Manager,打开协议 Protocols,允许命名管道 "named pipes" 和 "tcp/ip",右键点击 "tcp/ip",打开属性 Properties 标签 "IP addresses",在 TCP 动态端口 "TCP Dynamic Ports" 输入1433(可以不填)
5. 重启 SQL Server、IIS和PHP
6.用主机名+端口号的方式来连接,mssql_connect("localhost,1433", "sa", "");(我试了一下,不用也行)
网上有些人说,要把php.ini配置文件里的mssql.secure_connection = Off 改成on,但我这里改了之后,似乎更连接不上SQL Server,后来又把mssql.secure_connection = Off 改回之后,终于连上了。
阅读了这篇文章的人还阅读了
php+mysql分页原理案例分析
php把HTML代码转换成文本输出的方法
如何设置访问index.php/index.html的时候自动切换到顶
提供PHP问题错误修改服务