php5.3无法连接到MSSQL数据库的解决方案

    本文介绍了php5.3无法连接mssql数据库问题的解决方法。


    分析如下:


    从php5.3开始,系统不支持mssql_connect函数连接。 我也说了可以用com接口来实现。 下面介绍另一种解决php5.3无法连接mssql数据库问题的方法。


    windows系统下,PHP5.3以上版本不支持mssql扩展。


    将文件解压到php的扩展文件夹ext下,打开php.ini在结尾添加:


    代码如下:

1.png

    保存后重启apache即可,附上简单的php连接的例子,代码如下:


    代码如下:

2.png

    我使用的是wamp5.1集成安装包,在windows server 2008上面做的测试,php5.4以上版本测试没有成功.


    如果使用这个扩展连接Sql server 2005以上版本的sql server(如sql server 2008),你还需要在机器上先安装 SQL Server Native Client :    http://download.microsoft.com/download/0/E/6/0E67502A-22B4-4C47-92D3-0D223F117190/sqlncli.msi


    这个扩展为php新增了一系列sqlsrv_开头的函数,函数参考如下:


    代码如下:

3.png

    更多详细的说明可以在刚才的自解压的文件中有个 SQLServerDriverForPHP.chm 帮助文件中可以找到打开后点击API Reference节点.


    另外看一种odb连接方式,代码如下:


    代码如下:

4.png

    相关介绍:


    一、php5.3通过PDO成功连接MSSQL的步骤简要整理如下:


    1、下载microsoft drivers for php for sql server(目前有2.0 3.0版本,分别又分有ts和nts版,可通过phpinfo()中的Thread Safety:enable确认是ts,详见驱动自带手册)


    2、复制驱动至php文件夹的ext文件夹后,修改php.ini扩展extension=php_pdo_sqlsrv_53_ts_vc6.dll


    3、下载Microsoft SQL Server 2008 R2 Native Client安装


    测试代码:

5.png

    二、windows系统下,PHP5.3以上的版本已经不支持mssql扩展,所以如果你需要和sql server通信需要自行下载微软提供的The SQL Server Driver for PHP。这是一个自解压文件,解压后会得到以下几个文件:

6.png

    其中,52,53表示PHP的5.2.X和5.3.X的版本;nts表示非线和安全,ts表示线程安全;vc6表示使用Apache作为Web Server,vc9表示使用IIS作为Web Server。


    根据您的配置,将相应的DLL文件拷贝到php安装目录的ext文件夹中,接下来打开php.ini,添加以下语句打开php_sqlsrv和php_pdo_sqlsrv扩展:

7.png

    这里的53表示的是php5.3,如果你的是5.2版,就改成52,如果你的PHP版本是线程安全的,那么你的PHP安装目录下应该有一个php5ts.dll,与这里的两行语句对应,如果是php5nts.dll,那么上面的语句应该是:

8.png

    压缩包里有各个版本对于的dll文件,大家可以去仔细核查。


    开启扩展后,重启apache,这样就可以连接sqlserver了,但是还有一点要注意,如果你没有安装Microsoft SQL Server 2008 R2 Native Client,必须去下载安装,因为微软的这个扩展包需要这个支持。


    一切妥当之后,就可以写php代码了,如果你下载了The SQL Server Driver for PHP,那么在解压缩后的文件夹里有一个帮助文档,你可以很容易的找到示例,在这里站长介绍一个简单的例子:

9.png

    如若连接失败,重新启动sqlserver再试。

我来说两句

0 条评论

推荐阅读

  • 响应式布局CSS媒体查询设备像素比介绍

    构建响应式网站布局最常见的是流体网格,灵活调整大小的站点布局技术,确保用户在使用的幕上获得完整的体验。响应式设计如何展示富媒体图像,可以通过以下几种方法。

    admin
  • 提升网站的性能快速加载的实用技巧

    网站速度很重要,快速加载的网站会带来更好的用户体验、更高的转化率、更多的参与度,而且在搜索引擎排名中也扮演重要角色,做SEO,网站硬件是起跑线,如果输在了起跑线,又怎么跟同行竞争。有许多方法可提升网站的性能,有一些技巧可以避免踩坑。

    admin
  • 织梦CMS TAG页找不到标签和实现彩色标签解决方法

    织梦cms是我们常见的网站程序系统的一款,在TAG标签中常常遇到的问题也很多。当我们点击 tags.php 页的某个标签的时候,有时会提示:“系统无此标签,可 能已经移除!” 但是我们检查程序后台,以及前台显示页面。这个标签确实存在,如果解决这个问题那?

    admin
  • HTML关于fieldset标签主要的作用

    在前端开发html页面中常用的标签很多,今天为大家带来的是关于HTML中fieldset标签主要的作用说明,根据技术分析HTML

    admin

精选专题