> For the complete documentation index, see [llms.txt](https://docs.layraweb.com.tr/merhaba/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.layraweb.com.tr/merhaba/php-tarafi/konular/veritabani-islemleri/veritabanina-baglanma.md).

# Veritabanına Bağlanma

PHP'de veritabanı işlemleri yapabilmek için öncelikle veritabanına bağlanmamız gerekiyor. Bunun için `mysqli_connect()` veya `PDO` gibi fonksiyonlar kullanabiliriz.

`mysqli_connect()` fonksiyonu ile MySQL veritabanına bağlanmak için aşağıdaki gibi bir örnek kullanılabilir:

```php
$servername = "localhost";
$username = "kullanici_adi";
$password = "parola";
$dbname = "veritabani_adi";

// Bağlantı oluşturma
$conn = mysqli_connect($servername, $username, $password, $dbname);

// Bağlantıyı kontrol etme
if (!$conn) {
    die("Bağlantı hatası: " . mysqli_connect_error());
}
echo "Bağlantı başarılı!";
```

Bu örnekte `$servername` değişkeni veritabanının bulunduğu sunucu adresini, `$username` ve `$password` değişkenleri veritabanı kullanıcısının adını ve şifresini, `$dbname` değişkeni de veritabanının adını içermektedir. Bağlantı oluşturulduktan sonra `mysqli_connect_error()` fonksiyonu ile bir hata olup olmadığı kontrol edilir ve bağlantı başarılı mesajı ekrana yazdırılır.

PDO ile MySQL veritabanına bağlanmak için ise aşağıdaki gibi bir örnek kullanılabilir:

```php
$servername = "localhost";
$username = "kullanici_adi";
$password = "parola";
$dbname = "veritabani_adi";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    // Bağlantıyı ayarla
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Bağlantı başarılı!";
}
catch(PDOException $e) {
    echo "Bağlantı hatası: " . $e->getMessage();
}
```

Bu örnekte de `$servername`, `$username`, `$password` ve `$dbname` değişkenleri yine kullanılmaktadır. Bağlantı oluşturulurken `new PDO()` ifadesi kullanılır ve `$servername` ve `$dbname` değişkenleri `mysql:host=` ve `dbname=` ile birleştirilerek verilir. Bağlantı oluşturulduktan sonra hata kontrolü yapılarak bağlantı başarılı mesajı veya hata mesajı ekrana yazdırılır.

Veritabanına bağlanırken kullanıcı adı ve şifre gibi bilgilerin açık olarak kod içinde yer almaması için bu bilgiler genellikle bir konfigürasyon dosyasında saklanır ve kod içinde bu dosyadan okunarak kullanılır.
