CodeBlanks Logo Icon CodeBlanks

Proje: İletişim formu

PHP kursu · Orta seviye · Ders 94/115

5 derslik iletişim formu projesine genel bakış: oturum, dosya ve doğrulama bir arada.

Proje: İletişim formu

Bu 5 derslik projede bir iletişim formu yapacaksın. Her derste bir parça ekleyecek, son derste çalışan bir mini uygulamayı tamamlayacaksın.

Önceki gruplarda öğrendiğin HTML form, $_POST, htmlspecialchars, $_FILES, move_uploaded_file ve $_SESSION bilgilerini kullanacaksın. Proje boyunca bir ContactMessage sınıfı tasarlayacaksın: ad, e-posta ve mesaj tutan bir yapı. Ardından formu üreten, doğrulayan, dosya yükleyen ve oturumla saklayan fonksiyonları ekleyeceksin.

Proje yol haritası

Proje beş dersten oluşuyor. İkinci derste renderForm() fonksiyonuyla form iskeletini kuracaksın: ad, e-posta ve mesaj alanlarını içeren bir HTML formu. Üçüncü derste validateMessage() ile boş alan ve e-posta biçimi denetimi yapacaksın; filter_var ve FILTER_VALIDATE_EMAIL kullanacaksın. Dördüncü derste handleUpload() ile dosya yükleme entegrasyonu ekleyeceksin; $_FILES ve move_uploaded_file ile çalışacaksın. Son derste processSubmission() ile tüm parçaları birleştirip $_SESSION ile mesajları saklayacaksın.

Uygulama ContactMessage sınıfını tanımla

Bu projenin ilk parçasını yaz. ContactMessage adında bir sınıf tanımla. İçine public string $name = "";, public string $email = ""; ve public string $message = ""; property'lerini ekle. Sonra $m = new ContactMessage(); ile örnek oluştur, $m->name = "Ayşe"; ile metni ata ve echo $m->name; ile yazdır.

Örnek çözümü göster
class ContactMessage { ... } ile sınıfı tanımla, içine public string $name = "";, public string $email = ""; ve public string $message = ""; ekle. $m = new ContactMessage(); ile örnek oluştur, $m->name = "Ayşe"; ile ata, echo $m->name; ile yazdır.
Örnek çözüm:
<?php
// İletişim formu projesi için iskelet sınıfı
class ContactMessage {
    public string $name = "";
    public string $email = "";
    public string $message = "";
}

$m = new ContactMessage();
$m->name = "Ayşe";
echo $m->name;

Kendini test et

  1. İletişim formunda doğrulama neden önemlidir?

    • Formu daha şık göstermek için
    • Sunucu belleğini artırmak için
    • Boş veya hatalı verinin işlenmesini engellemek için
    • Daha az HTML yazmak için
    Cevabı göster

    Boş veya hatalı verinin işlenmesini engellemek için — Doğru. Doğrulama, boş veya hatalı verinin işlenmesini engeller; böylece veritabanına ve e-postaya çöp veri girmez.

  2. Sınıf adını tamamla

    class ____ {
        public string $name = "";
        public string $email = "";
        public string $message = "";
    }
    Cevabı göster
    class ContactMessage {
        public string $name = "";
        public string $email = "";
        public string $message = "";
    }
  3. Proje kavramlarını eşleştir

    ContactMessage
    Mesaj verisi
    renderForm
    Form çıktısı
    validateMessage
    Doğrulama
    $_FILES
    Dosya yükleme

Orta seviye bölümündeki tüm dersler