PDO Kullanımı

UntouchabLe

Kayıtlı Kullanıcı
Katılım
5 Şub 2020
Mesajlar
205
Tepkime puanı
87
Puanları
28
Konum
Van
PDO Kullanımı

Veritabanı Bağlantısı

PDO da veritabanı bağlantısı;

PHP:
<?php
try {
     $db = new PDO("mysql:host=localhost;dbname=test", "root", "123456");
} catch ( PDOException $e ){
     print $e->getMessage();
}
?>

Elbette PDO ile bağlanırken try ~ catch yapısını kullanmak zorunda değildik ancak böyle bir kullanım çok daha kullanışlıdır. Çünkü PDO’nun hatalar için bir exception’ı var ve daha mantıklı hata mesajları üretiyor.

Not: PDO sadece mysql’i değil bir çok veritabanı yapısını destekler.

Karakter Setini Ayarlama
Her zaman bir charset belirlemek iyidir. PDO da nasıl yaptığımızı örneklerle öğrenelim;

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

ya da;

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

SELECT İşlemi (Toplu)

PHP:
$query = $db->query("SELECT * FROM uyeler", PDO::FETCH_ASSOC);
if ( $query->rowCount() ){
     foreach( $query as $row ){
          print $row['kulanici_adi']."<br>";
     }
}

SELECT İşlemi (Tek)

PHP:
$id = $_GET['id'];
$query = $db->query("SELECT * FROM uyeler WHERE uye_id = '{$id}'")->fetch(PDO::FETCH_ASSOC);
if ( $query ){
    print_r($query);
}

INSERT İşlemi

PHP:
$query = $db->prepare("INSERT INTO uyeler SET
uye_kadi = ?,
uye_sifre = ?,
uye_eposta = ?");
$insert = $query->execute(array(
     "1tik", "123456", "1tik@net"
));
if ( $insert ){
    $last_id = $db->lastInsertId();
    print "insert işlemi başarılı!";
}

UPDATE İşlemi

PHP:
$query = $db->prepare("UPDATE uyeler SET
uye_kadi = :yeni_kadi
WHERE uye_kadi = :eski_kadi");
$update = $query->execute(array(
     "yeni_kadi" => "1tik",
     "eski_kadi" => "1tik.net"
));
if ( $update ){
     print "güncelleme başarılı!";
}

DELETE İşlemi (Toplu)

PHP:
$delete = $db->exec("DELETE FROM uyeler");
print 'Toplam '.$delete.' üye silindi!';

DELETE İşlemi (Tek)

PHP:
$query = $db->prepare("DELETE FROM uyeler WHERE uy_id = :id");
$delete = $query->execute(array(
   'id' => $_GET['id']
));
 

atlantiq

Kayıtlı Kullanıcı
Katılım
12 Şub 2020
Mesajlar
20
Tepkime puanı
8
Puanları
3
heeey hey php nerden nereye geldi acilen pdo öğrenmem lazım
 
5,689Konular
16,884Mesajlar
9,794Kullanıcılar
ManuSon üye
Üst