2

我知道这不是一个新问题,因为我发现了很多类似的问题,但不是解决我的问题的问题。

那么我的问题是我如何使用其他域Windows凭据(不是我登录的那个)连接到远程sql 2000服务器,php在apache(xampp)上运行......并且服务器不运行命名实例。

这些我试过的东西,

  1. 为我的 php 5.3 安装了 SQL Native 客户端
  2. 将 .dll 文件放到 ext 文件夹中
  3. 确保我通过 phpinfo 启动并运行了 sqlsrv
  4. mssql.secureconnections 已打开
  5. 编辑 php.ini 并重新启动 apache 服务器

因此,我尝试在这里和其他地方查看各种帖子,但实际上无法解决我的问题。

我尝试了几个代码,但这是我目前正在尝试的一个

$server = "XXX_Server";

$connInfo = array("数据库"=>"DB_Server", "UID"=>"用户名", "PWD"=>"密码");

$conn = sqlsrv_connect($server, $connInfo);

如果($conn)

{ echo "连接建立。";

}

别的

{

echo "无法建立连接。";

死(print_r(sqlsrv_errors(),真));

}

我得到如下所示的错误,

无法建立连接。

数组 ( [0] => 数组 ( [0] => 28000 [SQLSTATE] => 28000 [1] => 18456 [代码] => 18456 [2] => [Microsoft][SQL Server Native Client 10.0][SQL服务器]用户 'xx\username' 登录失败。[message] => [Microsoft][SQL Server Native Client 10.0][SQL Server]用户 'xx\username' 登录失败。)[1] => Array ([ 0] => 28000 [SQLSTATE] => 28000 [1] => 18456 [代码] => 18456 [2] => [Microsoft][SQL Server Native Client 10.0][SQL Server]用户 'xx\username 登录失败'. [message] => [Microsoft][SQL Server Native Client 10.0][SQL Server]用户'xx\username'登录失败。))

其中 xx = 域

请注意,客户端给了我一个 Windows 凭据,它可以访问服务器并且只能使用它。当我在脚本中硬编码我的凭据(也可以访问)时,它不起作用并出现上述错误,但是当我使用 QueryExpress / SQL Studio 时,我能够使用 Windows 凭据(我的)访问数据库。

因此,为了简单起见,我需要编写一个脚本,我需要在其中硬编码 Windows 凭据并连接到 SQL DB(卡在此处),并使用 Windows 广告身份验证(我知道该怎么做)使脚本只有少数人可以访问

请给我一些提示和建议,因为我卡住了,不知道如何继续。无论我研究和尝试什么,我最终都会做同样的事情,面对一堵墙:P

提前致谢

4

0 回答 0