PHP Data Objects (PDO): Veritabanı İşlemleri Rehberi (Select, Insert, Update, Delete, Sayfalama)
🧩 PHP Data Objects (PDO): Tüm CRUD İşlemleri, Toplam Veri ve Sayfalama (Güncel 2025 Rehberi)
Veritabanı işlemlerinde PDO (PHP Data Objects), PHP’nin en güvenli ve modern yöntemlerinden biridir.
PDO; SELECT, INSERT, UPDATE, DELETE, toplam kayıt sayısı ve sayfalama işlemlerini tek çatı altında güvenli bir şekilde yapmamıza olanak tanır.
Bu yazıda PDO’yu örneklerle öğreneceksin:
✅ SELECT (tekli ve toplu)
✅ INSERT
✅ UPDATE
✅ DELETE (tekli ve toplu)
✅ Toplam veri sayısı
✅ Sayfalama (İlk – Önceki – Sonraki – Son)
⚙️ 1. PDO Nedir?
PDO, PHP’nin veritabanı işlemleri için geliştirdiği nesne tabanlı (OOP) bir arabirimdir.
Avantajları:
-
🔐 Güvenli (SQL Injection’a karşı koruma sağlar)
-
⚙️ Çoklu veritabanı desteği (MySQL, PostgreSQL, SQLite...)
-
💡 Nesne yönelimli yapı
-
🧩 Prepared statement desteği
🔌 2. PDO ile Veritabanı Bağlantısı
💡
ERRMODE_EXCEPTIONsayesinde hataları kolayca yakalayıp yönetebilirsin.
🧠 3. INSERT (Yeni Veri Ekleme)
💡 prepare() + execute() kullanımı güvenlidir; SQL Injection riskini ortadan kaldırır.
📖 4. SELECT (Toplu Veri Listeleme)
🔹
fetchAll()tüm kayıtları getirir.
🔹PDO::FETCH_ASSOCsadece sütun adlarını döndürür (index numaralarını değil).
🔍 5. SELECT (Tekli Veri Getirme)
💡
fetch()yalnızca tek satır veri döndürür.
🧮 6. UPDATE (Veri Güncelleme)
🗑️ 7. DELETE (Tekli Silme)
🧹 8. DELETE (Toplu Silme)
🔹
IN()ifadesiyle birden fazla ID tek sorguda silinebilir.
📊 9. Toplam Kayıt Sayısı
📄 10. SAYFALAMA (Pagination)
Büyük veri listelerinde kullanıcıya sayfa sayfa görüntüleme imkanı vermek gerekir.
Aşağıda PDO ile dinamik sayfalama sistemi örneği vardır:
🔹 Örnek Çıktı:
💡 Kullanıcı, “İlk Sayfa” veya “Son Sayfa” bağlantılarıyla hızlıca başa veya sona gidebilir.
Aktif sayfa renkli ve kalın olarak vurgulanır.
⚡ 11. PDO ile Güvenli Kodlama İpuçları
✅ Hazırlanmış sorgular (prepare()) kullan, doğrudan değişkenleri sorguya yazma.
✅ Her execute() sonrası bool dönüşünü kontrol et.
✅ Veri tiplerini belirt: PDO::PARAM_INT, PDO::PARAM_STR
✅ Hataları yönetmek için try...catch bloğunu kullan.
✅ Kullanıcı girdilerini htmlspecialchars() ile temizle.
🏁 SONUÇ
Artık PDO ile tüm temel veritabanı işlemlerini güvenli bir şekilde yapabiliyorsun:
| İşlem | Açıklama |
|---|---|
| INSERT | Yeni veri ekler |
| SELECT | Veri okur (tekli veya toplu) |
| UPDATE | Kayıt günceller |
| DELETE | Kayıt siler (tekli veya çoklu) |
| COUNT | Toplam kayıt sayısını döndürür |
| LIMIT + OFFSET | Sayfalama sistemini oluşturur |
PDO, hem güvenli hem de performanslı yapısıyla modern PHP projelerinde vazgeçilmezdir.
Bu yapı sayesinde uygulamanın hem profesyonel hem de sürdürülebilir hale gelir. 💪


