gpt4 book ai didi

php - 为什么 sqlsrv_connect 不像以前那样工作?

转载 作者:行者123 更新时间:2023-11-29 20:58:39 24 4
gpt4 key购买 nike

所以我重新安装了我的“网络服务器”。它有一些操作系统问题,我决定是时候了!我复制/备份了整个 WAMP 文件夹并在重新安装后很好地恢复了它。所有这些都有效,只是网站不应该像它应该的那样。本质上,sqlsrv_connect 似乎没有连接!它不会给我任何错误输出。 $conn = sqlsrv_connect($serverName, $connectionInfo); 只会输出“false

我的设置:

'''
Windows 7 Enterprise 64 bit SP1
Wamp Version 2.5 (32bit)
Apache Version 2.4.9
PHP Version 5.5.12
MySQL Version 5.6.17
Microsoft SQL Server 2005 (on an external server)

extension=php_pdo_sqlsrv_55_ts.dll
extension=php_sqlsrv_55_ts.dll
'''

PHP 在另一台服务器上运行得很好。然而该服务器使用 IIS。

$serverName = "first.second.third.fourth.fifth";
$connectionInfo = array("Database"=>"Databasename", "UID"=>"Username", "PWD"=>"password");

$conn = sqlsrv_connect($serverName, $connectionInfo);
if (!$conn) {echo "no connection to database/server";}

$sql = "SELECT * FROM Tablename";
$results = sqlsrv_query( $conn, $sql ); if($results === false) {print_r( sqlsrv_errors(), true);}

到目前为止我尝试过的:

  • 检查服务器是否确实可以访问。相同的代码有效在 IIS 服务器上运行良好。
  • 尝试从我以前的 PHP 文件恢复备份。
  • 检查了 PHP.INI 文件并检查了 sqlsvr 扩展名已激活。
  • 在另一个 wamp 网络服务器上尝试过相同的网站。
  • 禁用 AV 以测试它是否可能不是 SQL 服务器的连接/防火墙。
  • 检查了管理员权限是否位于必需的 wamp exe 上

我错过了什么?我真的认为这是某个地方的一个小地方 - 只是不知道在哪里或什么!也许这是一个允许该系统连接到 SQL 服务器的设置?默认情况下,此设置在 IIS 服务器上启用...?也许我需要以某种方式通过额外的身份验证?

最佳答案

首先,我用它来获取错误消息:

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

然后问题是它需要我从这里获得的 ODBC 驱动程序:

https://www.microsoft.com/en-us/download/details.aspx?id=36434

下载 64 位版本并安装后一切正常。

关于php - 为什么 sqlsrv_connect 不像以前那样工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37414924/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com