PHP Aynı Safya İçerisinde Birden Fazla Form Oluşturma

Aynı sayfa içerisinde birden fazla form oluşturmak oldukça yaygındır ve PHP ile bu formları işlemek oldukça basittir. Her bir formun action özelliğini boş bırakarak, formun aynı sayfaya gönderilmesini sağlayabilirsiniz. Ardından, her formunun farklı bir işlemi temsil etmesi için if blokları kullanabilirsiniz.

Aşağıda, aynı sayfa içerisinde iki farklı formun nasıl oluşturulacağı ve işleneceği bir örnek bulunmaktadır:

PHP İki Form ve İşlem (index.php)

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>İki Form ve İşlem</title> </head> <body> <?php // Form 1 gönderilmiş mi kontrol et if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["form1"])) { // Form 1'den gelen verileri alma ve işleme $ad1 = $_POST["ad1"]; $soyad1 = $_POST["soyad1"]; // Form 1 verilerini ekrana yazdırma echo "<h2>Form 1 Sonuçları:</h2>"; echo "Ad: " . htmlspecialchars($ad1) . "<br>"; echo "Soyad: " . htmlspecialchars($soyad1); } // Form 2 gönderilmiş mi kontrol et if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["form2"])) { // Form 2'den gelen verileri alma ve işleme $ad2 = $_POST["ad2"]; $soyad2 = $_POST["soyad2"]; // Form 2 verilerini ekrana yazdırma echo "<h2>Form 2 Sonuçları:</h2>"; echo "Ad: " . htmlspecialchars($ad2) . "<br>"; echo "Soyad: " . htmlspecialchars($soyad2); } ?> <!-- Form 1 --> <form action="" method="post"> <h2>Form 1</h2> <label for="ad1">Adınız:</label> <input type="text" id="ad1" name="ad1" required> <br> <label for="soyad1">Soyadınız:</label> <input type="text" id="soyad1" name="soyad1" required> <br> <input type="submit" name="form1" value="Gönder"> </form> <!-- Form 2 --> <form action="" method="post"> <h2>Form 2</h2> <label for="ad2">Adınız:</label> <input type="text" id="ad2" name="ad2" required> <br> <label for="soyad2">Soyadınız:</label> <input type="text" id="soyad2" name="soyad2" required> <br> <input type="submit" name="form2" value="Gönder"> </form> </body> </html>

Yukarıdaki örnekte, her iki form da aynı sayfaya gönderiliyor. Formlardan hangisinin gönderildiğini ayırmak için name attribute'ünü kullanarak bir submit butonu belirtiyoruz (name="form1" ve name="form2"). Ardından, PHP kodunda her formun verilerini kontrol edip işleyerek ekrana yazdırıyoruz.



Yorum Ekle

Üzerine gel