Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Varsayılan olarak, SQL Server için PHP için Microsoft Sürücüleri SQL Server'a bağlanmak için Windows Kimlik Doğrulaması'nı kullanır. Çoğu senaryoda bunun, web sunucusunun işlem kimliğinin veya iş parçacığı kimliğinin (Web sunucusu kimliğe bürünme kullanıyorsa) son kullanıcının kimliğine değil sunucuya bağlanmak için kullanıldığı anlamına geldiğini unutmayın.
SQL Server'a bağlanmak için Windows Kimlik Doğrulaması kullandığınızda aşağıdaki noktalar dikkate alınmalıdır:
Web sunucusunun işleminin (veya iş parçacığının) çalıştığı kimlik bilgileri, bağlantı kurmak için geçerli bir SQL Server oturum açma bilgileriyle eşlenmelidir.
SQL Server ve Web sunucusu farklı bilgisayarlardaysa, SQL Server uzak bağlantıları etkinleştirecek şekilde yapılandırılmalıdır.
Uyarı
Bağlantı kurduğunuzda Veritabanı ve ConnectionPooling gibi bağlantı öznitelikleri ayarlanabilir. Desteklenen bağlantı özniteliklerinin tam listesi için bkz. Bağlantı Seçenekleri.
Aşağıdaki nedenlerle mümkün olduğunda SQL Server'a bağlanmak için Windows Kimlik Doğrulaması kullanılmalıdır:
Kimlik doğrulaması sırasında ağ üzerinden kimlik bilgisi geçirilmiyor; kullanıcı adları ve parolalar veritabanı bağlantı dizesine eklenmez. Bu, kötü amaçlı kullanıcıların veya saldırganların ağı izleyerek veya yapılandırma dosyalarının içindeki bağlantı dizelerini görüntüleyerek kimlik bilgilerini alamayacağı anlamına gelir.
Kullanıcılar merkezi hesap yönetimine tabidir; parola süre sonu süreleri, en düşük parola uzunlukları ve birden çok geçersiz oturum açma isteği uygulandıktan sonra hesap kilitleme gibi güvenlik ilkeleri.
Windows Kimlik Doğrulaması pratik bir seçenek değilse bkz . Nasıl yapılır: SQL Server Kimlik Doğrulaması Kullanarak Bağlanma.
SQLSRV örneği
AŞAĞıDAKI örnek, SQL Server için PHP için Microsoft Sürücüleri'nin SQLSRV sürücüsünü kullanarak SQL Server'ın yerel bir örneğine bağlanmak için Windows Kimlik Doğrulaması'nı kullanır. Bağlantı kurulduktan sonra, sunucu veritabanına erişen kullanıcının oturum açma bilgileri için sorgulanır.
Örnekte SQL Server ve AdventureWorks veritabanının yerel bilgisayarda yüklü olduğu varsayılır. Örnek tarayıcıdan çalıştırıldığında tüm çıkış tarayıcıya yazılır.
<?php
/* Specify the server and connection string attributes. */
$serverName = "(local)";
$connectionInfo = array( "Database"=>"AdventureWorks");
/* Connect using Windows Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
/* Query SQL Server for the login of the user accessing the
database. */
$tsql = "SELECT CONVERT(varchar(32), SUSER_SNAME())";
$stmt = sqlsrv_query( $conn, $tsql);
if( $stmt === false )
{
echo "Error in executing query.</br>";
die( print_r( sqlsrv_errors(), true));
}
/* Retrieve and display the results of the query. */
$row = sqlsrv_fetch_array($stmt);
echo "User login: ".$row[0]."</br>";
/* Free statement and connection resources. */
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>
PDO_SQLSRV örnek
Aşağıdaki örnek, önceki örnekle aynı görevi gerçekleştirmek için PDO_SQLSRV sürücüsünü kullanır.
<?php
try {
$conn = new PDO( "sqlsrv:Server=(local);Database=AdventureWorks", NULL, NULL);
$conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
}
catch( PDOException $e ) {
die( "Error connecting to SQL Server" );
}
echo "Connected to SQL Server\n";
$query = 'select * from Person.ContactType';
$stmt = $conn->query( $query );
while ( $row = $stmt->fetch( PDO::FETCH_ASSOC ) ){
print_r( $row );
}
?>
Ayrıca Bkz.
Nasıl yapılır: SQL Server Kimlik Doğrulaması Kullanarak Bağlanma
SQL Server için PHP için Microsoft Sürücüleri Programlama Kılavuzu
Belgelerde Kod Örnekleri Hakkında
Nasıl yapılır: SQL Server Oturumu Oluşturma
Nasıl yapılır: Veritabanı Kullanıcısı Oluşturma