Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法使用PHP 7.1从WAMP服务器连接到远程SQL数据库_Php_Sql Server_Odbc_Wamp_Php 7.1 - Fatal编程技术网

无法使用PHP 7.1从WAMP服务器连接到远程SQL数据库

无法使用PHP 7.1从WAMP服务器连接到远程SQL数据库,php,sql-server,odbc,wamp,php-7.1,Php,Sql Server,Odbc,Wamp,Php 7.1,我曾试图在互联网上搜索这一点,但似乎找不到解决方案,因此,如果这是一个重复,我提前道歉,因为我似乎找不到任何有助于我的情况 我已经安装了一个新的WAMP 3.1.3服务器,我正在尝试运行一个Laravel 5.6应用程序。该应用程序连接到网络上的一个远程MSSQL数据库,我使用相同的PHP版本(但Ubuntu)在我的Homestead测试环境中成功运行了该应用程序 在我的WAMP服务器(Microsoft Server 2016)上,我已从安装了PHP 7.1 SQL驱动程序。我编辑了我的php

我曾试图在互联网上搜索这一点,但似乎找不到解决方案,因此,如果这是一个重复,我提前道歉,因为我似乎找不到任何有助于我的情况

我已经安装了一个新的WAMP 3.1.3服务器,我正在尝试运行一个Laravel 5.6应用程序。该应用程序连接到网络上的一个远程MSSQL数据库,我使用相同的PHP版本(但Ubuntu)在我的Homestead测试环境中成功运行了该应用程序

在我的WAMP服务器(Microsoft Server 2016)上,我已从安装了PHP 7.1 SQL驱动程序。我编辑了我的
php.ini
文件,以启用如下驱动程序:

[PHP_SQLSRV]
extension=php_sqlsrv_71_ts.dll
[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_71_ts.dll
我可以在WAMP托盘实用程序中直观地看到,
php_pdo_sqlsrv_71_ts
php_sqlsrv_71_ts
被勾选并为php扩展启用。我已经运行了
php-m
,可以看到已安装并启用了以下模块:

...
PDO
pdo_mysql
pdo_sqlite
pdo_sqlsrv
...
我已经运行了phpinfo(),可以看到还安装了
pdo_sqlsrv

但是,当我尝试连接到远程数据库时,出现以下错误:
illumb\Database\QueryException:SQLSTATE[28000]:[Microsoft][ODBC Driver 13 for SQL Server][SQL Server]用户登录失败…

我使用windows身份验证作为数据库登录,我已在WAMP服务器上安装了SQL Management Studio,并使用windows凭据成功连接到数据库,因此我可以验证这不是用户名或密码问题

我可以确认我的
.env
文件中的所有详细信息都是正确的,并且是我的宅地测试环境的完整副本

我继续尝试为SQL Server安装ODBC驱动程序13,但是,在安装后,我收到以下错误:
安装SQL Server的ODBC驱动程序13失败,因为计算机上已存在更高版本。

当我检查已安装的程序时,显示已安装版本11和13:

我也尝试过启用
php_-odbc
php_-pdo_-odbc
模块,但也没有任何区别

我的WAMP设置如下所示:

[PHP_SQLSRV]
extension=php_sqlsrv_71_ts.dll
[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_71_ts.dll


我真的不知道还能尝试什么。也许我错过了什么?

结果是,它不喜欢我尝试通过Windows身份验证访问数据库。由于这篇文章,我能够确定SQL抛出了一个关于不喜欢我的用户名/密码的错误

奇怪的是,尽管我可以在同一台机器上通过ManagementStudio使用Windows凭据访问远程数据库,但PHP驱动程序肯定是另一回事

我针对数据库创建了一个新的用户帐户,并且可以毫无问题地登录