PHP, web uygulamalarında veritabanlarıyla etkileşim kurmak için çeşitli yöntemler sunar. Bu yöntemler arasında PDO (PHP Data Objects), güvenli, esnek ve farklı veritabanı yönetim sistemleriyle uyumlu bir yol sağlar. Bu makalede, PHP ile PDO kullanarak veritabanına bağlanmayı ve SQL sorgularını çalıştırmayı öğreneceksiniz.
- PDO Nedir?
PDO, PHP Data Objects'in kısaltmasıdır. PHP'nin veritabanı işlemlerini yönetmek için kullanılan bir uzantıdır. PDO, farklı veritabanı türleriyle uyumlu olduğundan, kodunuzu değiştirmeden veritabanınızı değiştirme esnekliği sunar. MySQL, PostgreSQL, SQLite, MSSQL gibi çeşitli veritabanı yönetim sistemleriyle kullanılabilir.
- Veritabanına Bağlanma
PDO ile veritabanına bağlanmak için, dsn (Veri Kaynağı Adı) olarak bilinen bir veritabanı bağlantı dizisi, kullanıcı adı ve şifre gibi bilgilere ihtiyacımız olacaktır. Ayrıca, bağlantı sırasında oluşabilecek hataları ele almak için try-catch yapısı kullanabiliriz. İşte bir örnek:
<?php
$servername = "localhost";
$username = "kullanici_adi";
$password = "parola";
$database = "veritabani_adi";
try {
$baglanti = new PDO("mysql:host=$servername;dbname=$database", $username, $password);
$baglanti->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Veritabanına başarıyla bağlandı!";
} catch(PDOException $e) {
die("Bağlantı hatası: " . $e->getMessage());
}
?>
- SQL Sorgularını Çalıştırma
Veritabanına bağlandıktan sonra, SQL sorgularını PDO kullanarak çalıştırabiliriz. PDO, sorguların güvenli bir şekilde çalıştırılmasına izin verir ve SQL enjeksiyonu gibi güvenlik açıklarından kaçınmamıza yardımcı olur. İşte bazı örnekler:
- SELECT Sorgusu
<?php
$sql = "SELECT * FROM kullanici";
$sonuc = $baglanti->query($sql);
if ($sonuc->rowCount() > 0) {
while($satir = $sonuc->fetch()) {
echo "ID: " . $satir["id"]. " - Ad: " . $satir["ad"]. " - Email: " . $satir["email"]. "<br>";
}
} else {
echo "Sonuç bulunamadı.";
}
?>
- INSERT Sorgusu
<?php
$ad = "John Doe";
$email = "john@example.com";
$sql = "INSERT INTO kullanici (ad, email) VALUES (?, ?)";
$stmt = $baglanti->prepare($sql);
$stmt->execute([$ad, $email]);
echo "Kayıt başarıyla eklendi.";
?>
- UPDATE Sorgusu
<?php
$id = 1;
$yeni_ad = "Jane Doe";
$sql = "UPDATE kullanici SET ad=? WHERE id=?";
$stmt = $baglanti->prepare($sql);
$stmt->execute([$yeni_ad, $id]);
echo "Kayıt başarıyla güncellendi.";
?>
- DELETE Sorgusu
<?php
$id = 1;
$sql = "DELETE FROM kullanici WHERE id=?";
$stmt = $baglanti->prepare($sql);
$stmt->execute([$id]);
echo "Kayıt başarıyla silindi.";
?>
Bu makalede, PHP ile PDO kullanarak veritabanı bağlantısı kurmayı ve SQL sorgularını çalıştırmayı öğrendiniz. PDO, veritabanı işlemlerinde daha güvenli ve esnek bir seçenek sunar ve çeşitli veritabanı yönetim sistemleriyle uyumluluğu sayesinde projelerinizde kolayca kullanabilirsiniz. Veritabanlarıyla etkileşim kurmak, web uygulamalarının temel bir becerisidir ve PDO size bu alanda önemli bir destek sağlar.
Sıkça Sorulan Sorular
PHP ile veritabanına bağlanmak için PDO kullanabilirsiniz. Bağlantı için kullanıcı adı, şifre, veritabanı adı ve veri kaynağı adı (DSN) gereklidir. PDO ile güvenli ve esnek bağlantı sağlanabilir.
PHP PDO (PHP Data Objects), veritabanı bağlantısı ve sorgu yönetimi için kullanılan bir PHP uzantısıdır. MySQL, PostgreSQL gibi farklı veritabanlarıyla uyumludur ve SQL enjeksiyonuna karşı güvenlik sağlar.
PDO ile veri eklemek için hazırlık (prepare) ve parametreli (bind) sorgular kullanılır. execute()
işlevi ile veriler veritabanına eklenir.
PDO ile SQL sorgusu çalıştırmak için query()
veya prepare()
ve execute()
işlevleri kullanılır. Bu yöntemler, veritabanından veri çekmek ve sorgu sonuçlarını güvenli şekilde işlemek için kullanılır.
PDO'nun prepare()
ve execute()
işlevleri, parametreli sorguları kullanarak SQL enjeksiyonuna karşı koruma sağlar. Kullanıcı verilerini doğrudan sorguya eklemek yerine parametreli sorgular kullanmak daha güvenli bir yöntemdir.
Bu Gönderiye Yorum Yapılmamış