配置php.ini,開啟php對mssql的擴展即可.

解决方案 »

  1.   

    PDO drivers mysql, sqlite, sqlsrv ???
    只有这个?
    你单写一个程序
    <?php
    var_dump(function_exists('sqlsrv_connect'));
    看看输出什么
      

  2.   


    输出的是HTTP 错误 500.0 - Internal Server Error呀!
    难道装的PHP没装对?因为是server2008系统,所以用的是微软那个web platform installation安装的PHP 5.4,确实没找到system32下的fcgiXXX.dll,但是phpinfo()又能输出信息。
      

  3.   


    PDO
    ---------------------------------------
    PDO support enabled
    PDO drivers mysql, sqlite, sqlsrv确实只有这几个呀!是不是还要安装啥呢?
      

  4.   

    已经百度了好多下了,发现对5.2以下版本可以用,以上版本的因为sql server数据库版本不同,所以这方法不推荐了。而且我也尝试了下载php_mssql.dll,然后添加注释,不起作用呀
      

  5.   

    我用的php版本是5.2.6 一直在正常使用中.
      

  6.   

    不要开玩笑!
    单独一句
    var_dump(function_exists('sqlsrv_connect'));
    这么可能是 HTTP 错误 500.0 - Internal Server Error
    至多是 bool(false)
      

  7.   

    呵呵,刚才确实是那样的哈!
    现在装成5.3啦,又下载了microsoft driver for PHP for sql server,终于不出错http500啦!
    就是5.3的ini文件和5.4的差别很大,不但要填键值,还要添加键名称
      

  8.   

    呵呵,刚才确实是那样的哈!
    现在装成5.3啦,又下载了microsoft driver for PHP for sql server,终于不出错http500啦!
    就是5.3的ini文件和5.4的差别很大,不但要填键值,还要添加键名称那问题是否解决?
      

  9.   

    Unable to connect.
    Array ( [0] => Array ( [0] => 08001 [SQLSTATE] => 08001 [1] => 2 [code] => 2 [2] => [Microsoft][SQL Server Native Client 11.0]Named Pipes Provider: Could not open a connection to SQL Server [2]. [message] => [Microsoft][SQL Server Native Client 11.0]Named Pipes Provider: Could not open a connection to SQL Server [2]. ) [1] => Array ( [0] => HYT00 [SQLSTATE] => HYT00 [1] => 0 [code] => 0 [2] => [Microsoft][SQL Server Native Client 11.0]Login timeout expired [message] => [Microsoft][SQL Server Native Client 11.0]Login timeout expired ) [2] => Array ( [0] => 08001 [SQLSTATE] => 08001 [1] => 2 [code] => 2 [2] => [Microsoft][SQL Server Native Client 11.0]A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online. [message] => [Microsoft][SQL Server Native Client 11.0]A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online. ) )------------------------------------------------------------------------------------------
    唉,又浪费俩小时,还是不行呀!找到问题了,但是不知道怎么解决的!
    我用的微软的web platform install安装PHP,它会自动安装一个SQL server 2012 native client的软件。只要把它卸载了,PHP就再也无法运行了,即使装了fastcgi也没用。但是装了它以后,我的sql server 2008数据库就肯定是连不起来的。可以加分加到100粉的,请大侠再给看下吧!
      

  10.   

    最后也没解决呀,逼得只能现学asp.net了,要不是需求SQL server,我用mysql轻松就搞定了。
    微软太自私了,明显是想让P(拍)H(黄)P(片)的饿死呀!!!
      

  11.   

    我的可以,PHP Version 5.4.16 链接 sql2008 链接成功
    用sqlsrv 3.0 ,2.0的没有试过,方法是
    php.ini 加入
    extension=php_pdo_sqlsrv_54_nts.dll
    extension=php_sqlsrv_54_nts.dll数据库链接:
    $conn= new PDO("sqlsrv:server=127.0.0.1;database=abc","user","123456") or die ("PDO Connection faild.");
      

  12.   

    这外问题我也遇到了,可上网上找到的都是这个,没解决啊!!我的远程服务器能正常连接,可是我本地Win7不能连接,后来我仔细查看sqlsrv_errors()给出的错误信息,原来是要安装SQL2008的客户端支持的,人家错误信息里给出了下载地址:http://msdn.microsoft.com/en-us/library/cc296170.aspx,下载来后只有几MB的,安装后链接就成功了!!!
      

  13.   

     
    大侠,我用你这个语句测试是bool(true),
    但是打开连接测试的页面却是空白,没有任何信息展示,这个怎么破啊。