【问题标题】:Call to undefined function sqlsrv_connect() in C:\wamp\www\Webs\client.php on line 7在第 7 行调用 C:\wamp\www\Webs\client.php 中未定义的函数 sqlsrv_connect()
【发布时间】:2013-08-27 07:37:42
【问题描述】:

我使用的是 windows 8 pro,Wamp 服务器(php V5.3.5,apache V2.2.17),Sql server 2005 express 版本。我已经下载了 sqlsrv 驱动程序并将它们解压缩到 php 扩展文件夹 (C:\wamp\bin\php\php5.3.5\ext),还通过添加扩展来更新 php.ini 文件

extension=php_sqlsrv_53_ts_vc6.dll
extension=php_pdo_sqlsrv_53_ts_vc6.dll

我在所有dll文件上进行了一系列尝试和错误后使用了这两个,重新启动wamp服务器时就是这两个没有错误

这是代码的连接行;

$con = sqlsrv_connect('TAQUATECH\SQLEXPRESS') or die("cannot connect");

出现以下错误;

致命错误:调用未定义的函数 sqlsrv_connect() C:\wamp\www\Webs\client.php 第 7 行

请,我需要有人帮助我,我将非常感激

【问题讨论】:

  • 如果您看不到启动错误,请查看 Apache 日志。

标签: php sql-server apache


【解决方案1】:

抱歉来不及回答,但我也遇到了同样的错误,我发现 Wamp Server 64bit 不支持 SQL Server Connection,你必须安装一个 32bit 版本的 wamp server。

【讨论】:

    【解决方案2】:

    对于使用 64 位系统(OS、WAMP、MSSQL)的用户,这些 64 位驱动程序可以为他们提供服务并修复错误:

    致命错误:调用 C:\wamp\www 中未定义的函数 sqlsrv_connect()...

    驱动程序 SQLSRV x64:

    http://robsphp.blogspot.in/2012/06/unofficial-microsoft-sql-server-driver.html

    【讨论】:

      【解决方案3】:

      您需要在您的网络服务器上安装并启用 sqlsrv。看看PHP官方网站上的installation page

      【讨论】:

      • 感谢查看安装页面,根据微软网站的要求,window 8不包括在内,是不是有问题?,因为我使用的是window 8 os
      【解决方案4】:

      Installation 的 Microsoft Drivers 3.0 for PHP for SQL Server 将解决此问题。也试试这个PHP Manual

      编辑:

      可在此处下载最新版本的驱动程序: » SQLSRV 3.0 下载。如果您需要对 PHP 5.2 和/或 PHP 的支持 用VC6编译,使用2.0版本的驱动: » SQLSRV 2.0 下载。

      Source

      【讨论】:

      • 感谢您的回复,但之前已经完成安装,甚至已经安装了2.0版本
      • 使用 php 5.3.5 时需要 3.0
      • 我编辑了 php.ini 以使用 3.0 dll 文件,当我重新启动 wamp 服务器时,它显示一条警告消息 PHP Startup: sqlsrv: Unable to initialize module Module compiled with build ID=API20090626, TS,VC9 PHP 编译 build ID=API20090626,TS,VC6 这些选项需要匹配
      • 请通过此链接。与您所面临的问题完全相同。 stackoverflow.com/questions/12154738/…
      • 我使用了 extension=php_sqlsrv_53_ts_vc6.dll extension=php_pdo_sqlsrv_53_ts_vc6.dll 服务器启动成功但仍然无法识别函数“sqlsrv_connect()” - 相同的未定义错误消息
      【解决方案5】:

      是的,我找到了解决方法;
      问题是,在我的系统上使用 apache 服务器运行 php 脚本,我停止了 wamp 服务器并使用 IIS 7 为 PHP 配置 fastCGI,您可以在此处获得视频教程

      http://www.iis.net/learn/application-frameworks/running-php-applications-on-iis/set-up-fastcgi-for-php.

      简单又好用,现在我可以同时连接到 sql server 2005 和 2008

      我的 PHP 详细信息
      版本 => 5.3.5
      编译器 => MSVC6 (Visual C++ 6.0)
      SqlSrv 驱动程序 => php_sqlsrv_53_ts_vc6.dll

      【讨论】:

        【解决方案6】:
        use 32 bit PHP Version.
        enable below one of them in php.ini
        [PHP_PDO_SQLSRV_53_NTS]
        extension=php_pdo_sqlsrv_53_nts.dll
        [PHP_SQLSRV_54_NTS]
        extension=php_sqlsrv_54_nts.dll
        [PHP_SQLSRV_53_NTS]
        extension=php_sqlsrv_53_nts.dll
        [PHP_PDO_SQLSRV_54_NTS]
        extension=php_pdo_sqlsrv_54_nts.dll
        
        
        
        thease dll version you can downlowd online
        

        【讨论】:

          猜你喜欢
          • 2015-04-04
          • 2016-04-09
          • 1970-01-01
          • 2017-12-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-01-23
          相关资源
          最近更新 更多