Muratcan Atak | Webmaster Blogu

Son Twitler


Reklam


SoundCloud


PDO Kullanımı

Muratcan AtakMuratcan Atak

Bu makalede pdo kullanımını açıklıyacağım.

Artık “mysql_connect“, “mysql_query” fonksiyonları Cpanel son sürümlerinde mysql desteğini kaldırıp MariaDB’ye geçmesiyle birlikde scriptler uyumsuz çalışmaya başladı.

PDO‘nun açılımı PHP DATA OBJECT‘tir yani PHP Veri Objesi anlamına geliyor,  veritabanı erişimi sağlayan bir arayüz yazılımıdır.

Adından da anlayacağınız üzerie “Object Oriented Programming” arayüzüne sahip, onlarca veritabanı sürücüsü destekliyor.

PDO Veritabanı Bağlantısı;

try { $db = new PDO("mysql:host=localhost;dbname=pdotest", "pdotest", "123456"); } catch ( PDOException $e ){ print $e->getMessage(); }

Yukarıdaki kod ile PDO bağlantısını rahatlıkla gerçekleştirebiliriz. Yukarıda ki bağlantıyı try-catch koşulu ile yapmamızın sebebi, bağlantı sırasında hata mesajlarını görebilmemiz.

Karakter Seti Ayarlama;

Bağlantı kodunda charset=utf8 belirttim fakat isteğe bağlı olarak aşağıdaki gibi de kullanabilirsiniz.

charset=iso-8859-9 , charset=utf-8 turkish gibi.

$db = new PDO("mysql:host=localhost;dbname=pdotest;charset=utf8", "pdotest", "123456");

veya

$db->query("SET CHARACTER SET utf8");

PDO ile select işlemi

Select örneğimizde üstteki prepare() ve bind,execute methodlarını daha iyi anlayacağız. İlk olarak tekli bir select örneği yapalım.

$sql = $db->prepare("SELECT * FROM tablo WHERE id= ?");
$sql->execute(array(
'5'
));
$row=$sql->fetch(PDO::FETCH_ASSOC);
echo $row['text'];
$err = $sql->errorInfo();
echo empty($err[2]) ?  "BAŞARILI" : $err[2];

bu örneği açıklayacak olursak “tablo” adlı tabloya gitmesini ve “id” değeri “5” olan satırı bulmasını oradan da “text” değerini çekmesini programımızdan istedik ve bunu yazdırdık.

PDO UPDATE Sorgusu Kullanımı

$guncelle = $db->prepare("UPDATE pdotablo SET user=? WHERE id = ?");
$guncelle->execute(array('Muratcan Atak','1'));
$hata = $guncelle->errorInfo();
echo empty($hata[2]) ?  "Başarılı Bir Şekilde Çalıştı." : $hata[2];

Update sorgumuzda ID degeri 1 olan user sütunumuzda ki verimizi “Muratcan Atak” olarak başarılı bir şekilde güncelledik.

PDO INSERT Sorgusu Kullanımı (Veri Eklemek)

$title = "Muratcan ATAK Title";
$content = "Pdo Anlatim";
$footer = "Pdo Test";
$sql = $db->prepare('INSERT INTO pdotablo (title,content,footer) VALUES (?,?,?)');
$ekle = $sql->execute(array(
$title,
$content,
$footer,
));
$hata = $sql->errorInfo();
echo empty($hata[2]) ?  "Başarılı Bir Şekilde Çalıştı." : $hata[2];

PDO DELETE Sorgusu Kullanımı

$del = $db->prepare("DELETE FROM pdotablo WHERE id = ?");
$del->execute(array(
'1'
));
$hata = $del->errorInfo();
echo empty($hata[2]) ?  "Sorgu Başarılı Bir Şekilde Çalıştı." : $hata[2];

Delete sorgumuzda ID degeri 1 olan verimizi başarılı bir şekilde sildik.

PDO Eklenen Verinin ID Degerini Almak

$id = $db->lastInsertId();
echo $id;

PDO bağlantı sonlandırma

$db = null;

 

prepare() Methodu

prepare() methodu çalıştırılmak üzere bir sorguyu hazırlamaya yarar. bindparam(), execute(), bindColumn(), bindValue() methodlarıyla birlikte çalışır. Dışarıdan sorgulara dahil edilecek datalar için 2 çeşit tanım yapmayı sağlar. Bunlardan ilki ? (soru işareti) ikincisi ise : (ikinokta üst üste) dir.

 

Yazı Hakkında Yorumlar 0
Henüz bu makalaye yorum yapan olmadı, ilk sen yapmak istermisin ?