PHP PDO Veri Silme

PDO ile veri silme işlemi için öncelikle PHP PDO Veritabanı Bağlantısı ile bağlantı yapılıp uygun SQL komutunun yazılması yeterli olacaktır.

PDO ile select, insert, update ve delete işlemleri hemen hemen aynı. Sadece sorgu kısmında kullanacağımız anahtar kelimeler değişiyor. Diğer kısımlar genelde hep aynı.

PDO ile veri silme işlemi DELETE SQL komutu ile yapılır.

DELETE deyimi, bir tablodaki mevcut kayıtları silmek için kullanılır.

DELETE Sözdizimi:

DELETE FROM table_name WHERE condition;
Not: Bir tablodaki kayıtları silerken dikkatli olun! DELETE deyimindeki WHERE yan tümcesine dikkat edin. WHERE yan tümcesi, hangi kayıtların silinmesi gerektiğini belirtir. WHERE yan tümcesini atlarsanız, tablodaki tüm kayıtlar silinecektir!

Veri Silme işlemi için öncelikle gerekli veritabanı bağlantısını PDO ile yapalım.


<?php

try {
   $dsn = "mysql:host=localhost;dbname=test;charset=utf8mb4";
   $user = "root";
   $passwd = "";

   $pdo = new PDO($dsn, $user, $passwd);
   $db-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_WARNING);
   //pdo bağlantı altına bu kodu SQL hatalarını görmek için ekleyin

   ecvo "Veri Silmne işlemi";
     
} catch ( PDOException $e ){
     echo "Bir Hata Oluştu: ".$e->getMessage();
}

?>


Veri silme işlemi için exec() veya prepare() metodunu kullanabiliriz.

Tablodaki satırları değiştiren ancak satır ve sütunlarla sonuç kümesi döndürmeyen sorgular (INSERT, UPDATE ve DELETE), exec() methodu ile gönderilir, bu method, etkilenen satırların sayısını veya hata durumunda "0" değerini döndürür.

Dışarıdan değer almayan veri güncelleme işlemi için exec() methodunu kullanabiliriz.


<?php

try {
   $dsn = "mysql:host=localhost;dbname=test;charset=utf8mb4";
   $user = "root";
   $passwd = "1234";

   $pdo = new PDO($dsn, $user, $passwd);
   $pdo-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_WARNING);
   //pdo bağlantı altına bu kodu SQL hatalarını görmek için ekleyin

   $sil =$pdo->exec("DELETE FROM test WHERE id=5");

   if($sil){
    echo "Kayıt silindi";
    }else{
    echo "Herhangi bir kayıt silinmedi";
   } 

     
} catch ( PDOException $e ){
     echo "Bir Hata Oluştu: ".$e->getMessage();
}

?>

Veri güncelleme işlemine dışarıdan değer alarak güncelleme gibi bir işlem yapılacaksa prepare() methodunun kullanılması faydalı olacaktır.

Hazırlanan bir ifade "prepare(sql)", önceden derlenmiş bir SQL ifadesidir. Bu, yer tutucularda kullanılan verilerin otomatik olarak SQL enjeksiyon saldırılarına karşı güvenli hale getirilmesi avantajına sahiptir.

Hazırlanan ifadeleri kullanmak, SQL enjeksiyonlarına karşı korumayı artırır.

<?php

$id=7;
    
try {
   $dsn = "mysql:host=localhost;dbname=test;charset=utf8mb4";
   $user = "root";
   $passwd = "1234";

   $pdo = new PDO($dsn, $user, $passwd);
   $pdo-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_WARNING);
   //pdo bağlantı altına bu kodu SQL hatalarını görmek için ekleyin

   $query=$pdo->prepare("DELETE FROM test WHERE id=?");
   $sil=$query->execute([$id]);

   if($sil){
    echo "Kayıt silindi";
    }else{
    echo "Herhangi bir kayıt silinmedi";
   } 

     
} catch ( PDOException $e ){
     echo "Bir Hata Oluştu: ".$e->getMessage();
}

?>

Lütfen konu haricinde soru sormayın cevaplanmayacaktır. Yorumunuz onaylandıktan sonra yayınlanacaktır.

9755

KATEGORİ
  • HTML
  • CSS
  • PHP
  • JQUERY
  • PHOTOSHOP
  • JavaScript
  • Web Dünyası
  • Linux
  • MİTHRİL FRAMEWORK
  • Laravel
POPÜLER MAKALE
  • HTML LİNK(Bağlantı)EKLEME - LİNK VERME
  • HTML YAZI VE RESİM ORTALAMA
  • HTML RESME LİNK VERME
  • HTML DİV ve SPAN NEDİR?
  • HTML FORM OLUŞTURMA
  • HTML RESİM EKLEME
  • HTML KAYAN RESİM VE Marguee KULLANIMI
  • CSS (BOYUT) GENİŞLİK VE YÜKSEKLİK (Width-Height)
  • HTML ARKAPLANA MÜZİK EKLEME
  • CSS YATAY MENÜ YAPIMI
ETİKET
WEBCEBİR © 2013 Tüm hakları saklıdır.