繁体   English   中英

致命错误:使用 wamp php 5.5.12 调用未定义的函数 sqlsrv_connect()

[英]Fatal error: Call to undefined function sqlsrv_connect() using wamp php 5.5.12

我正在尝试连接到 Azure 数据库。 我已经阅读了许多其他堆栈溢出答案,但它们对我不起作用:

- 我已经下载了 Azure 提供给你的所有驱动程序。 他们在

C:\\wamp\\bin\\php\\php5.5.12\\ext 文件夹: 在此处输入图片说明

- 我已将扩展文件夹的路径添加到系统变量中。

- 我已经在两个 php.ini 文件中设置了扩展名(在 apache 和 php 文件夹中)。

- 扩展已设置为

扩展名=php_sqlsrv_5X_ts.dll
extension=php_pdo_sqlsrv_5X_ts.dll 等 extension=C:/wamp/bin/php/php5.5.12/ext/php_sqlsrv_5X_ts.dll extension=C:/wamp/bin/php/php5.5.12/ext/php_pdo_5X_ts.dll

其中X表示我尝试了 53、54、55 和 56。

- 每次尝试新更改时,我都会重新启动所有 wamp 服务。

-我什至尝试过 IISExpress。

- 它仍然给我这个错误,当我使用phpinfo()时我看不到“sqlsvr”。

我还应该做什么? 我已经受苦了好几个星期了。

我在https://www.apachefriends.org/download.html上将此 XAMPP 与 PHP 5.5.34 一起使用,以进行测试以启用 PHP 的sqlsrv扩展。

你可以参考我的步骤:

  1. 安装 XAMPP 应用程序后,运行xampp-control.exe ,单击config => PHP(php.ini)检查扩展文件夹。 在此处输入图片说明
  2. https://msdn.microsoft.com/en-us/library/cc296170%28v=sql.105%29.aspx?f=255&MSPPError=-2147217396下载 3.2 版 PHP 的 MSSQL 驱动程序。 解压它。
  3. php_pdo_sqlsrv_55_ts.dllphp_sqlsrv_55_ts.dll从未压缩的驱动程序文件夹复制到 PHP 扩展文件夹(在我的场景中为X:\\xampp\\php\\ext )。
  4. PHP.ini文件中添加extension=php_pdo_sqlsrv_55_ts.dllextension=php_sqlsrv_55_ts.dll
  5. 启动阿帕奇。

同时,您可以使用phpinfo()检查Loaded Configuration Fileextension_dir的设置,以确保您在确定文件和正确文件夹中的 DLL 文件中配置了正确的设置。

我参考了Jordi在这篇帖子里的做法: Fatal error: Call to undefined function sqlsrv_connect() in C:\\xampp\\htdocs

xampp3.2.1 + php 5.5 + sql server 2014 Express,x64。

我的情况是,将xampp文件夹移植到一台全新的电脑上。

  1. 需要做的事情都做完了。 (下载 SQLSRV 5.6(或 5.3 或..),检查 php.ini 路径,...)
  2. 下载并安装OBDC 驱动程序 13 (x64)(或者您可以尝试OBDC 驱动程序 11 (x64))
  3. 下载并安装SQL Server® 2014 Service Pack 3 (x64),需要重启电脑。
  4. 下载并安装 Visual C++ Redistributable VS2012 Update4 ( x86 )
  5. 重启阿帕奇

然后就可以工作了!!!!!

我这几天一直在寻找这个问题的解决方案,希望能帮助到更多的人。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM