PHP5连接不上SQL2005的解决办法

本文转自IT摆渡网欢迎转载,请标明出处
PHP5连接不上SQL2005的解决办法

更多php文章请阅读

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:windowssystem32ntwdblib.dll和phpntwdblib.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问题错误修改服务

上一篇:如何解决每次打开office2007、2010、2013都会出现正在配置


下一篇:PostgreSQL FOR 快递公司快件跟踪表设计思考