从托管的linux PHP访问远程MSSQL服务器
我看到过许多类似的问题,但通常通过访问服务器安装额外的软件包(如FreeTDS)来回答。我们没有这样的访问权限,因为我们的linux服务器由1和1托管 我的代码(来自前面其他人在这里提出的问题)是: 我收到的错误消息是:从托管的linux PHP访问远程MSSQL服务器,php,sql-server,iis-7,Php,Sql Server,Iis 7,我看到过许多类似的问题,但通常通过访问服务器安装额外的软件包(如FreeTDS)来回答。我们没有这样的访问权限,因为我们的linux服务器由1和1托管 我的代码(来自前面其他人在这里提出的问题)是: 我收到的错误消息是: Failed to get DB handle: could not find driver MSSQL服务器是可访问的,因此我可以在必要时添加功能。 MSSQL服务器也运行IIS7,但不运行PHP。我对IIS7知之甚少,但是在IIS7上运行PHP脚本会比在托管的linux
Failed to get DB handle: could not find driver
MSSQL服务器是可访问的,因此我可以在必要时添加功能。
MSSQL服务器也运行IIS7,但不运行PHP。我对IIS7知之甚少,但是在IIS7上运行PHP脚本会比在托管的linux机器上运行更容易吗
有人能告诉我是否可以连接到MSSQL服务器吗
提前感谢,
Dave您尝试过mssql\u connect吗 以下是语法: mssql_connect([string$servername[,string$username[,string$password[,bool$new_link=false]])) 在您的情况下,它将是:
$link = mssql_connect($hostname, $username, $pw);
mssql_select_db($dbname, $link);
请注意,$hostname应该包含MSSQL实例名称。e、 “KALLESPC\SQLEXPRESS”您是否尝试过mssql\u连接 以下是语法: mssql_connect([string$servername[,string$username[,string$password[,bool$new_link=false]])) 在您的情况下,它将是:
$link = mssql_connect($hostname, $username, $pw);
mssql_select_db($dbname, $link);
请注意,$hostname应该包含MSSQL实例名称。e、 “KALLESPC\SQLEXPRESS”经过多次尝试和错误,我陷入了困境
try {
$hostname = "localhost";
$port = 123456;
$dbname = "ClientDatabase";
$username = "uuuu";
$pw = "pppp";
$dbh = new PDO ("sqlsrv:Server=$hostname,$port;Database=$dbname","$username","$pw");
} catch (PDOException $e) {
echo "Failed to get DB handle: " . $e->getMessage() . "\n";
exit;
}
$stmt = $dbh->prepare("select name from master..sysdatabases where name = db_name()");
$stmt->execute();
while ($row = $stmt->fetch()) {
print_r($row);
}
unset($dbh); unset($stmt);
感谢那些回答了问题的人和那些回答了其他人类似问题的人。到了那里。。。。最终
干杯
戴夫经过多次尝试和错误,我终于成功了
try {
$hostname = "localhost";
$port = 123456;
$dbname = "ClientDatabase";
$username = "uuuu";
$pw = "pppp";
$dbh = new PDO ("sqlsrv:Server=$hostname,$port;Database=$dbname","$username","$pw");
} catch (PDOException $e) {
echo "Failed to get DB handle: " . $e->getMessage() . "\n";
exit;
}
$stmt = $dbh->prepare("select name from master..sysdatabases where name = db_name()");
$stmt->execute();
while ($row = $stmt->fetch()) {
print_r($row);
}
unset($dbh); unset($stmt);
感谢那些回答了问题的人和那些回答了其他人类似问题的人。到了那里。。。。最终
干杯
Dave我认为mssql_connect在PHP5.4中不受欢迎,因为$dbh=new PDO(“dblib:host=$hostname:$port;dbname=$dbname”、“$username”、“$pw”);不正确,应该是:$dbh=new-PDO(“sqlsrv:Server=$hostname:$port;Database=$dbname”、“$username”、“$pw”);我相信mssql_connect在PHP5.4中不受欢迎,因为$dbh=new PDO(“dblib:host=$hostname:$port;dbname=$dbname”、“$username”、“$pw”);不正确,应该是:$dbh=new-PDO(“sqlsrv:Server=$hostname:$port;Database=$dbname”、“$username”、“$pw”);仍然不起作用,但正在前进。