【问题标题】:sqlsrv driver not load in phpinfo() file in windows server 2008 r2sqlsrv 驱动程序未加载到 Windows Server 2008 r2 的 phpinfo() 文件中
【发布时间】:2018-11-15 02:41:22
【问题描述】:

我有 windows server 2008 r2 32 bit.in server PHP 5.6 版本。安装sqlsrv32.exe并在php中提取ext文件夹并在php.ini文件中提供扩展名。

extension=php_pdo_sqlsrv_56_ts.dll
extension=php_pdo_sqlsrv_56_nts.dll
extension=php_sqlsrv_56_nts.dll
extension=php_sqlsrv_56_ts.dll

phpInfo() 文件 sqlsrv 驱动程序未找到。我已经运行 sql server 连接 php 文件给出错误PHP Fatal error: Call to undefined function sqlsrv_connect()

【问题讨论】:

  • 您不想加载 ts 版本的扩展。请把它们注释掉,重启 IIS 看看 phpinfo() 告诉你什么。
  • sqlsrv 未加载
  • 查看你的扩展目录,看看你有哪些 sqlsrv 扩展。你可能有pdo_php_sqlsrv_nts.dllphp_sqlsrv_nts.dll(没有_56)。

标签: php sql-server iis-7 windows-server-2008-r2 sqlsrv


【解决方案1】:

我通常遵循以下步骤:

PHP的配置(我想你已经这样做了):

运行这个<?echo phpinfo()?>;

检查从“加载的配置文件”部分加载了哪个配置文件。

设置你的 PHP 环境:

  • extension_dir="path_to_your_php_instalation\ext"
  • extension=php_pdo_sqlsrv_56_ts.dll
  • extension=php_pdo_sqlsrv_56_nts.dll
  • extension=php_sqlsrv_56_nts.dll
  • extension=php_sqlsrv_56_ts.dll

为 SQL Server 配置 PHP 驱动程序(这可能是你的问题):

我认为你已经下载了 sqlsrv32.exe。驱动程序版本 3.2 和 3.1 需要 Microsoft ODBC 驱动程序 11。因此,请检查 IIS 日志文件是否有任何错误。

您可以下载 Microsoft ODBC Driver 11 here

【讨论】:

    【解决方案2】:

    我已经满足了我的答案。 php.ini 中给定路径的 php 的 ext 文件夹。我的问题解决了。 phpinfo() 加载 sqlsrv 驱动。

    【讨论】:

      猜你喜欢
      • 2011-07-18
      • 2017-06-11
      • 1970-01-01
      • 2013-10-06
      • 1970-01-01
      • 2018-03-02
      • 1970-01-01
      • 2018-02-22
      • 2016-05-02
      相关资源
      最近更新 更多