PHP 8 ile bir "Kurs Güncelleme" formu oluşturmak, mevcut bir kursun bilgilerini güncelleyebilmek için gereklidir. Aşağıdaki adımlar, bu işlemi gerçekleştirmek için gereken HTML formunu ve PHP kodunu içermektedir.
1. HTML Kurs Güncelleme Formu
Kullanıcıdan güncellenecek kursun ID'sini, yeni ismini, açıklamasını ve fiyatını alacak bir HTML formu oluşturalım:
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Kurs Güncelle</title>
</head>
<body>
<h1>Kurs Güncelle</h1>
<form action="kurs_guncelle.php" method="post">
<label for="id">Kurs ID:</label>
<input type="number" id="id" name="id" required>
<br>
<label for="isim">Yeni Kurs İsmi:</label>
<input type="text" id="isim" name="isim" required>
<br>
<label for="aciklama">Yeni Açıklama:</label>
<textarea id="aciklama" name="aciklama" required>
</textarea>
<br>
<label for="fiyat">Yeni Fiyat:</label>
<input type="number" id="fiyat" name="fiyat" step="0.01" required>
<br>
<input type="submit" value="Güncelle">
</form>
</body>
</html>
2. PHP Kodu (kurs_guncelle.php)
Formdan gelen verileri işleyerek belirtilen kursu güncelleyecek bir PHP dosyası oluşturalım.
<?php
// Veritabanı bağlantısı
$servername = "localhost";
$username = "kullanici_adiniz";
$password = "sifreniz";
$dbname = "veritabani_adiniz";
// Bağlantıyı oluştur
$conn = new mysqli($servername, $username, $password, $dbname);
// Bağlantıyı kontrol et
if ($conn->connect_error) {
die("Bağlantı başarısız: " . $conn->connect_error);
}
// Formdan gelen verileri kontrol et
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$id = $_POST['id'];
$isim = $_POST['isim'];
$aciklama = $_POST['aciklama'];
$fiyat = $_POST['fiyat'];
// Prepared sorgu oluştur
$stmt = $conn->prepare("UPDATE kurslar SET isim = ?, aciklama = ?, fiyat = ? WHERE id = ?");
$stmt->bind_param("ssdi", $isim, $aciklama, $fiyat, $id);
// Sorguyu çalıştır
if ($stmt->execute()) {
if ($stmt->affected_rows > 0) {
echo "Kurs güncellendi!";
} else {
echo "Güncellenmesi gereken bir kurs bulunamadı.";
}
} else {
echo "Güncelleme başarısız: " . $stmt->error;
}
// Sorgu nesnesini kapat
$stmt->close();
}
// Bağlantıyı kapat
$conn->close();
?>
3. Açıklama
-
HTML Formu:
- Kullanıcıdan güncellenecek kursun ID'sini, yeni ismini, açıklamasını ve fiyatını alır.
- Form verileri,
kurs_guncelle.php
dosyasına POST yöntemiyle gönderilir. - Tüm alanların zorunlu olduğunu belirtmek için
required
özelliği kullanılır.
-
PHP Kodu:
- Veritabanına bağlanır ve formdan gelen verileri alır.
-
$_SERVER["REQUEST_METHOD"]
ile formun POST yöntemiyle gönderilip gönderilmediğini kontrol eder. - Prepared sorgu kullanarak, belirtilen ID'ye sahip kursun ismini, açıklamasını ve fiyatını günceller.
- Güncelleme işlemi başarılı olursa kullanıcıya bir mesaj gösterir; aksi takdirde hata mesajı döner veya güncellenmesi gereken kurs bulunmadığına dair bir uyarı verir.
4. Kullanım
- Yukarıdaki HTML formunu bir dosyaya (örneğin,
kurs_guncelle_form.php
) kaydedin. - PHP kodunu başka bir dosyaya (örneğin,
kurs_guncelle.php
) kaydedin. - Web sunucunuzda bu dosyaları çalıştırarak kurs güncelleme işlemini deneyin.
Bu adımlarla, kullanıcıların mevcut kurs bilgilerini güncelleyebileceği basit bir uygulama oluşturmuş oldunuz.