Selco Cod
Selco Cod

Yazılım ve güvenlik üzerine makaleler yazan günümüz teknolojisini yakından takip eden sıradan birisi...

Twitter


PHP Data Objects(PDO) Kullanımı

PHP 5+ ile gelen PDO kısaca; gelişmiş veri tabanı yönetimi sağlayan hafif ve tutarlı bir arayüzdür. PHP 5.5 sürümünde mysql_* fonksiyonlarının kısmen kaldıracağını duyurulduktan sonra php geliştiricileri PDO yada mySQLi kullanımını tavsiye etmekteydiler. Ben eski alışkanların verdiklerinden ötürü bunu bugün kullanmaya başladım. İlk olarak bütün günümü stabil bir veriTabanı sınıfı yazmaya ayırdım ve PDO alt yapısında kendime ait bir class yapısı oluşturdum. Tüm blog sorgularımı bu sınıf ile tekrar oluşturdum. Bunu ilerleyen günler de paylaşmayı düşünüyorum. Şimdi asıl konumuza gelirsek, "iyi ki PDO yapısına geçmişim" dedirten olaya. Bu olay güvenlik olayıdır. Maalesef piyasadaki tüm amatör PHP altyapısında yazılan betiklerde SQL Injection saldırısına maruz kalıyordu. PDO yapısının bindings özelliği ile açığa sebebiyet veren değişkenler harici olarak dahil edilip açık yüksek seviye de kurtulmuş olunuyor. PDO neredeyse tüm veritabanları ile sorunsuz olarak çalışmaktadır. Sunuculara default olarak mysql, sqlite, sqlite2 açık olarak geliyor. PDO ile mySQL Bağlantısı
<?php
try {
	$db = new PDO('mysql:host=localhost;dbname=test', 'root', '');
} catch (PDOException $e) {
    return 'DB Error: '. $e->getMessage();
}
?>
PDO ile Query Komut
<?php
foreach ( $db->query('SELECT * FROM makaleler') as $makale )
{
	print_r( $makale );
}
?>
PDO exec Komut
<?php
$db->exec("DELETE FROM makaleler WHERE id = 13");
?>
Daha detaylı bilgilere burdan ulaşabilirsiniz.


Yazı Hakkında Yorumlar