Php 8 Delete Product

Php 8 Delete Product

PHP 8 ile bir ürünü silmek, kullanıcıların veritabanındaki ürünleri kolayca kaldırabilmesine olanak tanır. Bu rehberde, bir ürünü silme işleminin nasıl gerçekleştirileceği adım adım açıklanacaktır.

1. Veritabanı Yapısı

Daha önce oluşturduğumuz products tablosunu kullanacağız. Tablo yapısını tekrar hatırlatacak SQL komutu aşağıda verilmiştir:

CREATE TABLE products ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL, price DECIMAL(10, 2) NOT NULL, stock INT NOT NULL );

2. Ürün Silme İşlemi

Ürün silme işlemi, genellikle bir ürün listesi sayfasında yer alır. Kullanıcı bir ürünü silmek istediğinde, o ürüne ait bir silme bağlantısı tıklanır ve bu işlem başlatılır.

2.1. Ürün Silme Formu

Aşağıda, mevcut ürünleri listeleyen ve her ürünün yanında bir silme bağlantısı olan basit bir PHP dosyası örneği verilmiştir.

<?php // product_list.php // Veritabanı bilgileri $host = 'localhost'; $db = 'veritabani_adi'; $user = 'kullanici_adi'; $pass = 'sifre'; $charset = 'utf8mb4'; // DSN oluşturma $dsn = "mysql:host=$host;dbname=$db;charset=$charset"; try { $pdo = new PDO($dsn, $user, $pass); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // Ürünleri alma $stmt = $pdo->query("SELECT * FROM products"); $products = $stmt->fetchAll(PDO::FETCH_ASSOC); } catch (PDOException $e) { echo "Hata: " . $e->getMessage(); } // Bağlantıyı kapatma $pdo = null; ?> <!DOCTYPE html> <html lang="tr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Ürün Listesi</title> </head> <body> <h1>Ürün Listesi</h1> <table> <tr> <th>ID</th> <th>Ürün Adı</th> <th>Fiyat</th> <th>Stok</th> <th>İşlem</th> </tr> <?php foreach ($products as $product): ?> <tr> <td><?php echo $product['id']; ?></td> <td><?php echo htmlspecialchars($product['name']); ?></td> <td><?php echo htmlspecialchars($product['price']); ?> TL</td> <td><?php echo htmlspecialchars($product['stock']); ?></td> <td> <a target="_blank" href="delete_product.php?id=<?php echo $product['id']; ?>">Sil</a> </td> </tr> <?php endforeach; ?> </table> </body> </html>

2.2. Ürünü Silme Sayfası

Aşağıda, belirli bir ürünü silmek için kullanılacak olan PHP kodu verilmiştir.

<?php // delete_product.php // Veritabanı bilgileri $host = 'localhost'; $db = 'veritabani_adi'; $user = 'kullanici_adi'; $pass = 'sifre'; $charset = 'utf8mb4'; // DSN oluşturma $dsn = "mysql:host=$host;dbname=$db;charset=$charset"; if (isset($_GET['id'])) { $id = $_GET['id']; try { // PDO bağlantısını oluşturma $pdo = new PDO($dsn, $user, $pass); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // SQL sorgusu $sql = "DELETE FROM products WHERE id = :id"; // Prepared statement oluşturma $stmt = $pdo->prepare($sql); // Değeri bağlama $stmt->bindParam(':id', $id); // Sorguyu çalıştırma $stmt->execute(); echo "Ürün başarıyla silindi!"; } catch (PDOException $e) { echo "Hata: " . $e->getMessage(); } // Bağlantıyı kapatma $pdo = null; } else { echo "Silinecek ürün ID'si belirtilmedi."; } ?>

Açıklamalar

  1. Ürün Listesi:

    • product_list.php dosyası, veritabanındaki tüm ürünleri listelemek için kullanılır.
    • Her ürünün yanında bir "Sil" bağlantısı vardır. Bu bağlantıya tıklandığında, kullanıcıyı delete_product.php dosyasına yönlendirir.
  2. Veri Silme:

    • delete_product.php dosyası, belirtilen ürün ID'sine sahip ürünü silmek için gerekli kodu içerir.
    • Eğer ID parametresi belirtilmişse, ürün silme işlemi gerçekleştirilir.
    • Silme işlemi DELETE SQL sorgusu ile yapılır ve prepared statements kullanılır.
  3. Başarı Mesajı:

    • Ürün başarıyla silindiğinde kullanıcıya bir mesaj gösterilir.

Sonuç

Bu örnek, PHP 8 ile bir ürün silme işleminin nasıl gerçekleştirileceğini göstermektedir. Geliştirmek isterseniz, kullanıcıya silme işlemi için bir onay mekanizması ekleyebilir veya işlem sonrasında kullanıcıyı ürün listesi sayfasına yönlendirebilirsiniz. Bu, kullanıcı deneyimini artıracaktır.



Yorum Ekle

Üzerine gel