當您連接到 SQL Server 時,SQL Server Driver for PHP 支持 SQL Server 身份驗證。 在使用 SQL Server 身份驗證連接到 SQL Server 時必須考慮以下幾點:
必須對服務器啟用 SQL Server 混合模式身份驗證。
在嘗試建立連接時必須設置 UID 和 PWD 連接屬性。UID 和 PWD 必須映射到有效的 SQL Server 用戶和密碼。
注意:
包含右大括號 (}) 的密碼必須使用另一個右大括號進行轉義。例如,如果 SQL Server 密碼為“pass}word”,則 PWD 連接屬性的值必須設置為“pass}}word”。
在使用 SQL Server 身份驗證連接到 SQL Server 時應采取以下預防措施:
下面看一個簡單的實例:
<?php
$serverName = "(local)";
$uid = 'xxxx';
$pwd = 'xxxx';
$connectionInfo = array( "UID"=>$uid,
"PWD"=>$pwd,
"Database"=>"AdventureWorks");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "無法連接數據庫.";
die( print_r( sqlsrv_errors(), true));
}
$tsql = "SELECT CONVERT(varchar(32), SUSER_SNAME())";
$stmt = sqlsrv_query( $conn, $tsql);
if( $stmt === false )
{
echo "查詢錯誤.";
die( print_r( sqlsrv_errors(), true));
}
$row = sqlsrv_fetch_array($stmt);
echo "登錄的用戶: ".$row[0];
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>