Php 8 Uygulama: Dinamik Kurs Listesi

Php 8 Uygulama: Dinamik Kurs Listesi

PHP 8 ile bir "Dinamik Kurs Listesi" oluşturmak, bir veritabanındaki kursların dinamik olarak görüntülenmesini ve yönetilmesini sağlayan bir web uygulaması geliştirmeyi içerir. Bu uygulamada, kurs bilgilerini ekleyebilir, güncelleyebilir, silebilir ve listeleyebiliriz. Veritabanı olarak genellikle MySQL kullanılır. İşte adım adım bir anlatım:

1. Gerekli Ortamın Hazırlanması

  • PHP 8 yüklü bir sunucu (WAMP, XAMPP ya da doğrudan bir web sunucusu).
  • MySQL veritabanı.
  • PHP MySQLi veya PDO kullanarak veritabanına bağlanmak.

2. Veritabanı ve Tablo Oluşturma

İlk olarak, bir veritabanı ve kurslar için bir tablo oluşturalım. Aşağıda örnek bir SQL komutu bulunmaktadır:

CREATE DATABASE kurs_listesi; USE kurs_listesi; CREATE TABLE kurslar ( id INT AUTO_INCREMENT PRIMARY KEY, isim VARCHAR(255) NOT NULL, aciklama TEXT NOT NULL, olusturulma_tarihi TIMESTAMP DEFAULT CURRENT_TIMESTAMP );

3. Veritabanına Bağlantı (PHP Kodu)

PHP ile MySQL veritabanına bağlanmamız gerekiyor. Bunun için mysqli_connect() veya PDO kullanılabilir. İşte örnek PDO ile bağlantı:

<?php $host = 'localhost'; $dbname = 'kurs_listesi'; $username = 'root'; $password = ''; try { $conn = new PDO("mysql:host=$host;dbname=$dbname", $username, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "Bağlantı başarılı!"; } catch (PDOException $e) { echo "Bağlantı başarısız: " . $e->getMessage(); } ?>

4. Kurs Ekleme (Form ve İşleme)

Kullanıcının kurs ekleyebilmesi için bir form oluşturuyoruz. Bu form, kurs adını ve açıklamasını alıp veritabanına ekleyecek.

  • HTML Formu:
<form action="kurs_ekle.php" method="POST"> Kurs İsmi: <input type="text" name="isim" required> <br> Açıklama: <textarea name="aciklama" required> </textarea> <br> <input type="submit" value="Kurs Ekle"> </form>
  • PHP İşlem Kodu:
<?php if ($_SERVER["REQUEST_METHOD"] == "POST") { $isim = $_POST['isim']; $aciklama = $_POST['aciklama']; $sql = "INSERT INTO kurslar (isim, aciklama) VALUES (:isim, :aciklama)"; $stmt = $conn->prepare($sql); $stmt->bindParam(':isim', $isim); $stmt->bindParam(':aciklama', $aciklama); if ($stmt->execute()) { echo "Kurs başarıyla eklendi!"; } else { echo "Bir hata oluştu!"; } } ?>

5. Kursları Listeleme

Eklenen kursları dinamik olarak listelemek için PHP ile veritabanındaki verileri çekebiliriz.

<?php $sql = "SELECT * FROM kurslar"; $stmt = $conn->query($sql); $kurslar = $stmt->fetchAll(PDO::FETCH_ASSOC); foreach ($kurslar as $kurs) { echo "Kurs İsmi: " . $kurs['isim'] . "<br>"; echo "Açıklama: " . $kurs['aciklama'] . "<br>"; echo "Tarih: " . $kurs['olusturulma_tarihi'] . "<br><hr>"; } ?>

6. Kurs Silme ve Güncelleme

  • Kurs Silme: Kursları silmek için bir buton koyup DELETE işlemi ile silme yapılabilir.
$sql = "DELETE FROM kurslar WHERE id = :id"; $stmt = $conn->prepare($sql); $stmt->bindParam(':id', $id); $stmt->execute();
  • Kurs Güncelleme: Mevcut bir kursu güncellemek için önce veriyi alıp bir form ile değiştirilmesine izin verebiliriz, ardından UPDATE komutu ile veritabanını güncelleyebiliriz.
$sql = "UPDATE kurslar SET isim = :isim, aciklama = :aciklama WHERE id = :id"; $stmt = $conn->prepare($sql); $stmt->bindParam(':isim', $isim); $stmt->bindParam(':aciklama', $aciklama); $stmt->bindParam(':id', $id); $stmt->execute();

7. Sonuç

Bu adımlarla basit bir dinamik kurs listesi oluşturulmuş olur. Kurs ekleme, listeleme, güncelleme ve silme işlemleri başarıyla tamamlanabilir. PHP 8’in yeni özellikleriyle performans artırılmıştır ve yazım hataları için daha iyi hata ayıklama olanağı sağlar.



Yorum Ekle

Üzerine gel