PHP Data Objects (PDO) Ders – 1

Blog-Kursad-PHp phdoEvet arkadaşlar bu makalemde sizlere PDO yani PHP Data Objects ten bahsedeceğim.PHP Data Objects PHP’nin güvenli bir veritabanı erişimi sağlayan arayüz olarak düşünebiliriz.Bütün veritabanlarını desteklemesi açık ara diğerlerinden farklı olarak gösterilen avantajlarındandır. PHP Data Objects (PDO) try catch bloklarını kullanan kendine ait hata sınıfları bulunan koruması üst düzey olan (mysql komutlarına göre 🙂 ) bir arayüzdür.Kodları Object Oriented Programming düzenine göredir.Güvenli kelimesine örnek olarak SQL-Injections gösterebilirim nasıl mı ? PDO dizi yapısını kullandığı için MYSQL den daha güvenlidir Injections işlemlerine göre ondan dedim 🙂 . Neyse ben yazılarımı uzatmaya bayılırım sizi de bayarım en iyisi PDO da MYSQL veritabanı na bağlantı nasıl yapılır onu gösterip anlatalım.

PHP Data Objects (PDO) Connection [PDO Bağlantı İşlemleri] :

$dsn = 'mysql:host=localhost;dbname=test';
$user = 'dbuser';
$password = 'mypassword'; 
try
{
    $db = new PDO($dsn, $user, $password);
}
catch (PDOException $e)
{
    echo 'Connection failed: ' . $e->getMessage();
}

Yukarıdaki şekilde bağlayabiliriz sistemimizi veritabanı na.Bu kodları açıklık getirecek olursam satır satır anlatayım uzatmayı severim bilirsiniz 🙂 .

$dsn = 'mysql:host=localhost;dbname=test';

// Bu satırda mysql ile veritabanı türünü belirledik. host=localhost; ile ise hostumuzu belirttik ki genelde localhost tur ücretsiz hostinglerde değişiklik gösterir. dbname=test’ ile Mysql de oluşturduğumuz veritabanı ismini yazıyoruz.

$user = 'dbuser'; // Bu satırda ise kullanıcı adımızı aldık veritabanı bağlantısı için.
$password = 'mypassword';//Bu Satırda ise şifremizi aldık veritabanı bağlantısı için gereklidir ikisi de.

Artık bu satıları açıkladığımıza göre try catch blokları ile PDO veritabanı ile bağlantı yapabiliriz sanırım gerekli bilgilerimizi de aldık 🙂 .

try
{
    $db = new PDO($dsn, $user, $password);
}

try { .. } blokları içerisine işlemimizi yani bağlantı sınıfımızı yazarak işlem yaptırmasını sağlıyoruz.Bunu nasıl yapabiliriz diye soru sorsam yukarıda zaten yazıyor ama bir de anlatayım.

$db artık her zaman kullanacağımız bir değişken olacağından düzgün bir isim kullanmanızı tavsiye ederim veri ekleme silme düzenleme vs. işlemlerde sık kullanacağınız bir değişkendir. Bağlantı nesnesini barındırdığı için önemlilik derecesi yüksektir.

Bu değişken içerisinde PDO bağlantı nesnesi oluşturuyoruz bunu da şu şekilde yapıyoruz.

$degisken= new PDO ($baglantıgenelbilgilerimiz,$kullanıcıadımız,$sifremiz)

yani biz bu değerleri try{ . . } catch{ . . } blokları dışında aldık zaten ondan sadece yeşil renkteki kod gibi yazsak bir sorun olamaz.Ben sadece şimdi size mantığını anlattım PDO bağlantı nesnesinin o kadar 🙂 .

Artık Catch() { .. } blokları içerisine girebiliriz burada kullanıcı eğer veritabanı’na bağlanamazsa ise 3.tekil kullanıcılara gösterilecek hataları entegre ederiz.Bu hataları gösterirken de PDO sisteminin hatalar kütüphanesini kullanabiliriz.Bunu da yukarıdaki kod ile yapabiliriz ama ben aşağıda paylaşıp yanlarına neyin ne iş yaptığını açıklayayım.

catch (PDOException $e)  // Catch blok içerisinde hata kütüphanesini $e değişkenine entegre ettik dersek..
{
    echo 'Bağlantı başarısız: ' . $e->getMessage(); // Burada da bağlantı hatasını kütüphanemizden almıştık ekrana da yazdırdık nasıl mı ->getMessage() fonksiyonu ile
}

Neyse arkadaşlar benim bu derslik yazacaklarım bu kadar yine uzatmak istemem bu dersimizde kısaca şunları öğrendik ;

-PDO nedir ?

-PDO Avantajları

-PDO Veritabanı Bağlantı İşlemleri

İkinci dersimizde görüşmek üzere arkadaşlar kendinize iyi bakınız.

YAZAN : Kürşad AYDIN