致命错误:在C:\ xampp \ htdocs中调用未定义的函数sqlsrv_connect()

时间:2015-06-09 15:34:02

标签: php sql sql-server xampp azure-sql-database

我正在使用

  • Xampp版本3.2.1,PHP版本5.6.8。
  • Microsoft Azure SQL服务器

目标

我正在尝试创建一个可以访问我的数据库的网络应用,并能够选择插入更新和< strong> DELETE 记录。

问题

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

错误

  

致命错误:调用未定义的函数sqlsrv_connect()   第25行的C:\ xampp \ htdocs \ BLT \ Employee_Database .php

CODE

<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>

这就是我所做的事情

  • 我已经安装了Microsoft PHP for SQL驱动程序,并按照所有说明加载驱动程序,但它似乎没有工作!
  • 我将php_sqlsrv_56.ts.dll文件添加到PHP的extensions文件夹中,还添加了php_pdo_sqlsrv_56.ts.dll
  • 我还将extension=php_sqlsrv_56.ts.dll行添加到php.ini文件中。

非常感谢任何帮助!

3 个答案:

答案 0 :(得分:19)

  

在使用PHP 5.3的Windows上,MSSQL扩展不再可用   或以后。 SQLSRV是MS SQL的替代驱动程序,可从中获得   微软:»   http://www.microsoft.com/en-us/download/details.aspx?id=20098

一步一步

  1. http://www.microsoft.com/en-us/download/details.aspx?id=20098下载SQLSRV32.EXE(适用于SQL Server的PHP的Microsoft驱动程序)

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

  3. enter image description here

    1. extension = php_sqlsrv_56_ts.dll

    2. 取消注释或附加php.ini
    3. 从XAMPP控制面板重启Apache(停止/启动)

    4. 我测试了它并且它100%工作

      您可以在official Microsoft Git repository中找到最新编译的二进制文件。

答案 1 :(得分:6)

我跟着Lea Tano指导并没有奏效。我需要更多的步骤。 至少对于Windows7(或我的系统),有一些缺失的步骤(即那些没有在同一服务器/机器上安装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)

答案 2 :(得分:0)

Lea的回答应该为你做的伎俩。从Web PI下载PHP 5.6非常重要 - https://www.microsoft.com/web/downloads/platform.aspx

将Web PI下载到计算机时使用IE。让我知道如果这对您有所帮助,如果没有,请看看以下博客。它是Azure SQL DB + PHP + IIS的入门指南。

http://blogs.msdn.com/b/sqlphp/archive/2015/05/11/getting-started-with-php-and-microsoft-sql-server.aspx

最佳,
认识Bhagdev
微软项目经理