Merhaba arkadaşlar. Pdo ile veri ekleme , listeleme ve veritabanı bağlantısını görmüştük. Şimdi de diğer bir konu olan güncellemeyi görelim. Mantık mysql ile hemen hemen aynı fakat bunun bize faydası daha fazla. Daha hızlı çalışması da pdo ‘nun neden tercih edildiğini gösteriyor gibi. Öncelikle bir veritabanı bağlantımızı yapalım.
<?php try{ $db = new PDO("mysql:host=localhost;dbname=blog;charset=utf8;","root",""); $db->query("SET CHARACTER SET 'utf8'"); $db->query("SET NAMES 'utf8'"); }catch(PDOException $hata){ echo $hata->getMessage(); } ?>Veritabanı bağlantımızı yaptıktan sonra birkaç veriyi kullanıcıdan aldığımızı varsayalım. Örnek olarak adı , şifresi ve telefonu olsun. Veri eklemede yaptığımız gibi “prepare” metodunu kullanarak gerçekleştireceğiz işlemimizi. İşlemlere başlayalım , tabi veritabanımızı dahi ettikten sonra.
<?php require("veritabani.php"); $ad = "mahmut" ; $soyad = "soydere" ; $tel = 1234564789;Bu bilgileri aldıktan sonra veritabanında yer alan alanlardaki bilgiler ile yer değiştireceğiz. Sorguyu yazarak işleme başlayalım.
$guncelle = $db->prepare("UPDATE uyeler SET eski_ad = ? , eski_soyad = ? , eski_tel = ? " PDO::FETCH_ASSOC);Burada eski_ad ,eski_soyad , eski_tel diye belirttiğim alanlar veritabanında yer aldığını varsaydığım alanlar… Burası sizde tabi ki farklı olabilir. Kendinize göre uyarlarsınız.
$update = $guncelle->execute(array($ad,$soyad,$tel));Bu kısım çok ama çok önemli bir değişkenin içerisine alıp kontrol ettirmezsek güncellemede sorun çıkabilir. Yaşadım bu yüzden söylüyorum.
if($update){ echo "Güncelleme Başarılı"; }else{ echo "Malesef güncelleme yapılamadı."; } ?>Burada tabii ki biz ilk mesajı alacağı çünkü başarılı bir şekilde güncelleme yaptık. Daha gelişmiş bir şekilde ileri yazılarımda göstereceğim elbette. Mantık bu şekildedir ve kolay bir işlemdir. İlk başlarda yalnızca update işleminde sorun yaşardım fakat mantığını yatırınca halletmiştim. Güncelleme işlemi de bu kadar basit yeni bir makalede görüşmek üzere.