Fatal error: Call to undefined function sqlsrv_connect() in C:\xampp\htdocs

Fatal error: Call to undefined function sqlsrv_connect() in C:\xampp\htdocs

我正在使用


目标

我正在尝试创建一个 Web 应用程序来访问我的数据库,并且能够 SELECTINSERTUPDATEDELETE 记录。


问题

我无法连接到数据库服务器


错误

Fatal error: Call to undefined function sqlsrv_connect() in C:\xampp\htdocs\BLT\Employee_Database .php on line 25


代码

<html>
<head>
    <Title>Employee Database</Title>
</head>
<body>
<form method="post" action="?action=add" enctype="multipart/form-data">
    Last name <input type="text" name="LastName" id="LastName"/></br>
    First name <input type="text" name="FirstName" id="FirstNamne"/></br>
    E-mail address <input type="text" name="Email" id="Email"/></br>
    User Id <input type="text" name="UserId" id="UserId"/></br>
    Password <input type="password" name="Password" id="Password"/></br>
    <input type="submit" name="submit" value="Submit"/>
</form>

<?php
$serverName = "jy4nij6vuy.database.windows.net,1433";
$connectionOptions = array("Database" => "robertfarb",
    "UID" => "robertFarb",
    "PWD" => "******");
$conn = sqlsrv_connect($serverName, $connectionOptions);

if ($conn === false) {
    die(print_r(sqlsrv_errors(), true));
}
?>

</body>
</html>

这就是我到目前为止所尝试的

如有任何帮助,我们将不胜感激!

The MSSQL extension is not available anymore on Windows with PHP 5.3 or later. SQLSRV, an alternative driver for MS SQL is available from Microsoft: » http://www.microsoft.com/en-us/download/details.aspx?id=20098

循序渐进

  1. 从以下网址下载 SQLSRV32.EXE(PHP 的 SQL 服务器的 Microsoft 驱动程序):http://www.microsoft.com/en-us/download/details.aspx?id=20098

  2. 选择路径:C:\xampp\php\ext

  1. php.ini

  2. 中取消注释或附加 extension = php_sqlsrv_56_ts.dll
  3. 从 XAMPP 控制面板 (Stop/Start) 重新启动 Apache

我测试了它,它 100% 有效

您可以在 official Microsoft Git repository.

中找到最新编译的二进制文件

Lea 的回答应该可以解决您的问题。从 Web PI 下载 PHP 5.6 非常重要 - https://www.microsoft.com/web/downloads/platform.aspx

将 Web PI 下载到计算机时,请确保使用 IE。

我遵循了 Lea Tano 的指导,但没有成功。我需要更多步骤。 至少 Windows7(或我的系统)缺少一些步骤(即那些没有在同一个 server/machine 中安装 MSSQL Server 的人)。

我是这样实现的:

  1. 按照 Lea Tano 指南安装 SQLSRV 5.6(或 5.3 或..)
  2. 下载并安装 OBDC Driver 11 (msodbcsql.msi)
  3. 下载并安装 SQL Server Native Client(sqlncli.msi 文件)
  4. 检查是否安装(如果没有,下载安装)Visual C++ Redistributable VS2012 Update4 (vcredist_x86.exe)
  1. 下载 PHP for SQL Server Windows (Link) 的 Microsoft Drivers,下载后打开文件会是一个 zip 文件
  2. 将下载的文件解压到默认的PHP扩展目录(通常是c:\php\ext,c:\xampp\php\ext)
  3. 要启用 SQLSRV 驱动程序,请通过将以下行添加到扩展部分来修改 php.ini。你的 PHP 版本和 extension/dll 版本应该匹配你可以参考下图。根据需要更改文件名:

extension=php_sqlsrv_80_ts.dll

  1. 要启用 PDO_SQLSRV 驱动程序,PHP 数据对象 (PDO) 扩展必须可用,可以是内置扩展,也可以是动态加载的扩展。

extension=php_pdo_sqlsrv_80_ts.dll

  1. 重新启动 Web 服务器。

请阅读 MS 文档Loading the Microsoft Drivers for PHP for SQL Server了解详细步骤和更多信息

NOTE: REMEMBER TO LOAD THE DRIVER VERSION CORRESPONDING TO THE PHP VERSION REFER BELOW IMAGE