Hoş Geldin, Mühendis!

Tüm mühendislerin ve mühendis adaylarının yer aldığı forum sayfamıza kayıt olmalısınız. Kayıt olduktan sonra tüm ders notlarına, teknik dokümanlara erişim sağlayabilecek, sorularınızı sorup cevaplar verebileceksiniz. Sitemiz tamamiyle ücretsiz olmakla birlikte Mühendis Puanı sistemi uygulamaktadır.

Bilgi paylaştıkça çoğalır.

Premium Abonelik 📢

Premium abonelik ile sitemizi reklamsız gezebilir, dosyaları sınırsızca indirebilirsiniz.

Daha Fazlası

[Muhendisiz.NET] Tekrar Sizlerleyiz! 🎭

Mühendisiz.NET sitesi forum ve blog sayfası olarak tekrar yayın hayatına başladı. 🤩 Sizlerde forum sayfamıza üye olabilir ve mühendis topluluğumuza katılabilirsiniz.

Daha Fazlası

Mühendis Puanı Sistemi🏆

Bilgi paylaştıkça çoğalır felsefesini benimsemiş olmamız nedeniyle Mühendis Puanı sistemini uygulamaya aldık. Dökümanları indirebilmek için bazı paylaşımlarda bulunmalısınız. 📨

Daha Fazlası
  • Dosya indirebilmek için 2 Mühendis Puanına ihtiyacınız var. Konuya yorum atarak 1 MP Not paylaşarak 6 MP kazanırsınız.
    Bilgi Paylaştıkça Çoğalır. (Mühendislik Puanı (MP) Nedir?)
  • Mühendis Puanı kazanmaya vakti olmayanlar için ücretli premium üyelik sistemi aktif edilmiştir.
    (Premium Üyelik SATIN AL)

PHP MySQL Veri Silme

turkmedia

Moderatör
Katılım
8 Ara 2022
Mesajlar
760
Mühendis Puanı
1,612
PHP ile MySQL veri silme işlemi için öncelikle ile bağlantı yapılıp ile uygun SQL komutunun yazılması yeterli olacaktır.

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

DELETE FROM tablo_adi WHERE sutun_adi = silinecek_veri
NOT: Veri silme işleminde WHERE kullanılmazsa tablodaki tüm veriler silinir.

Veri silme işlemi için öncelikle gerekli MySQL bağlantısını yapalım.

<?php

$baglanti = new mysqli("localhost", "root", "", "kisi");

if ($baglanti->connect_errno > 0) {
die("<b>Bağlantı Hatası:</b> " . $baglanti->connect_error);
}

$baglanti->set_charset("utf8");

echo "Veri silme işlemi";

$baglanti->close();

?>
Veri silme işlemi için query veya prepare metodunu kullanabiliriz.

Dışarıdan değer almayan veri silme işlemi için query metodunu kullanabiliriz.

<?php

$baglanti = new mysqli("localhost", "root", "", "kisi");

if ($baglanti->connect_errno > 0) {
die("<b>Bağlantı Hatası:</b> " . $baglanti->connect_error);
}

$baglanti->set_charset("utf8");

$sorgu = $baglanti->query("DELETE FROM kisiler WHERE kisi_sira = 1");

if ($baglanti->errno > 0) {
die("<b>Sorgu Hatası:</b> " . $baglanti->error);
}

if ($baglanti->affected_rows > 0) {
echo $baglanti->affected_rows . " kayıt silindi.";
} else {
echo "Herhangi bir kayıt silinemedi.";
}

$baglanti->close();

?>
Veri silme işlemi sonucunda mysqli sınıfındaki affected_rows özelliği silinen kayıt sayısını alır.

Veri silme işlemine dışarıdan değer alarak koşullu veri silme gibi bir işlem yapılacaksa prepare metodunun kullanılması faydalı olacaktır.

<?php

$sira = 1;

$baglanti = new mysqli("localhost", "root", "", "kisi");

if ($baglanti->connect_errno > 0) {
die("<b>Bağlantı Hatası:</b> " . $baglanti->connect_error);
}

$baglanti->set_charset("utf8");

$sorgu = $baglanti->prepare("DELETE FROM kisiler WHERE kisi_sira = ?");

if ($baglanti->errno > 0) {
die("<b>Sorgu Hatası:</b> " . $baglanti->error);
}

$sorgu->bind_param("i", $sira);
$sorgu->execute();

if ($sorgu->affected_rows > 0) {
echo $sorgu->affected_rows . " kayıt silindi.";
} else {
echo "Herhangi bir kayıt silinemedi.";
}

$sorgu->close();
$baglanti->close();

?>
Ön hazırlı sorgunun çalıştırılması sonucunda mysqli_stmt($sorgu) sınıfı içindeki affected_rows özelliği silinen kayıt sayısını alır.

Silinen kayıt sayısını belirten affected_rows özelliği kullanılarak veri silme işlemi kontrol edilebilir.

Veri silme işlemindeki dikkat edilmesi gereken yer DELETE SQL komutuna uygun WHERE koşulunun yazılmasıdır.

Herhangi bir WHERE koşulu belirtilmediğinde tablodaki veriler toplu/çoklu olarak silinecektir.

Hayırlı günler dilerim.
 

Son kaynaklar