Form Mail Gönderimi

PHP ile Form Mail Gönderimi
PHP ile Form Mail Gönderimi
Bu yazımda Html ile oluşturduğumuz formun Php ile istediğimiz mail adresine gönderimini bir örnek ile sağladım. Detaylar için yazımı inceleyebilirsiniz.

Merhabalar,

Bu yazımda Html ile oluşturduğumuz formun Php ile istediğimiz mail adresine gönderimini bir örnek ile sağlayacağım. Öncelikle sitenizde SMTP ayarlarınızı yaptığınızdan emin olmalısınız. SMTP ayarlarınızı yaptığınız takdirde çalışacaktır. Ayrıca localhost üzerinde de çalışmayacaktır.

İlk olarak Html tarafında Bootstrap web framework’ü yardımıyla hızlıca bir form oluşturalım. Elinizde bulunması ve denemeniz için codepen üzerinden bir form örneğini aşağıya bırakıyorum.

See the Pen İletişim Formu by furkangiray.com (@furkangiray_com) on CodePen.

Bootstrap class ve özellikleri sayesinde Css yazmadan basit ve mobil uyumlu bir form oluşturduk. Bu formda dikkat etmeniz gereken alanlar;

  • Input elamanlarının ve özellikle button elementinin name niteliği ve onun değerleri
  • Form elementinin action değeri (farklı bir dosyada kontrol sağlayacaksanız dosya adını tırnak içine yazınız. Örn: (“mailgonder.php”)
  • Form elementinin method değeri (bu tip formlar için en uygun ve güvenli değer olan “post”)
  • Son olarak label ve input elementlerinin uyumlu olması için label üzerinde for, input üzerinde id nitelik değerlerinin aynı olması gerektiğidir.

Formumuz hazır şimdi sıra Gönder butonuna tıklandıktan sonra gelişecek olaylar. Form etiketi içerisindeki action=” ” niteliği boş olduğu için aynı Php sayfasında kontrol sağlayacaktır. Php dosyamızın en üstüne gelen verileri kontrol eden ve gerekli parametreleri ekleyip hedeflediğimiz işlemi yapalım.

<?php 
    if(isset($_POST['fg-gonder'])){
        $kime = "test@furkangiray.com"; // hedef email
        $adi = $_POST['adi'];
        $soyadi = $_POST['soyadi'];
        $eposta = $_POST['eposta'];
        $telefon = $_POST['telefon'];
        $mesaj = $_POST['mesaj'];
        $konu = "Örnek İletişim Formu";
        $mesaj = '
        <html>
            <head>
                <title>Örnek İletişim Formu</title>
            </head>
            <body>
                <p>'.$adi.' '.$soyadi.' aşağıdaki bilgiler ile size form gönderdi</p>
                <p><b>İsim:</b> '.$adi.'</p>
                <p><b>Soyisim:</b> '.$soyadi.'</p>
                <p><b>E-posta:</b> '.$eposta.'</p>
                <p><b>Telefon:</b> '.$telefon.'</p>
                <p><b>Mesaj:</b> '.$mesaj.'</p>
            </body>
        </html>'; 
        $header  = "Content-type: text/html; charset=utf-8 \r\n"; 
        mail($kime,$konu,$mesaj,$header);
        echo "<p class='alert alert-success'>Başarıyla Gönderildi. Teşekkür ederiz "    . $adi . ", sizinle iletişime geçeceğiz .</p>";
    }
?>


Yukarıdaki Php kodlarında değişkenlerin değerlerini değiştirip özelleştirdikten sonra kullanabilirsiniz. Php mail() fonksiyonu kullanılarak bu örnek yapılmıştır. Detaylı bilgiye fonksiyona tıklayarak Php kendi sitesinden ulaşabilirsiniz.

 

Yazılan Php kodu özetleyecek olursak;

  • Html formu içinde bulunan button name değeri örnek “fg-submit” değerinin POST ile bize ulaşıp ulaşmadığını if ile kontrol ediyoruz. Eğer post ile bu değer bize ulaşmışsa işlemi yapıyoruz.
  • Input elementlerinin name niteliğine girdiğimiz değerleri Php $_POST[‘name’]  özelliği ile alıp değişkenlere atıyoruz. 
  • Son mesaj değişkeninde mail için küçük bir Html yapısı oluşturuyoruz. Önceki tanımladığımız değişkenleri gönderilen mail içeriğine düzgün bir biçimde yerleştiriyoruz.
  • Zorunlu olmayan özel isteklerinizi belirtebileceğiniz 4. parametre olan $header için ise içerik tipinin Html belgesi olduğunu karakter setinin ise utf-8 olacağını belirtiyoruz. Bu sayede olası karakter sorunlarını çözmüş oluyoruz.
  • mail() fonksiyonun aldığı parametreleri düzgün bir şekilde doldurarak mail gönderim kısmını yazıyoruz. Mail gönderildikten sonra, gönderildiğine dair bilgilendirici mesajı da isteğe bağlı olarak ekleyebilirsiniz.

İster istemez form yapısı karşımıza gelmektedir, bunu dinamikleştirmek ve mail gönderimi her zaman müşterilerin istediği bir olaydır.  İşinize yarayacağını ve en azından temel bilgileri kavramanız açısından önemli bir konu olduğunu düşünüyorum. Umarım çalışma mantığını anlamışsınızdır.

Mutlu kodlamalar 🙂

0 Shares:

Benimle yorumunu paylaş;

Bunlara da göz atabilirsin
HTML Yeni Sekmede Link Açma
Devamını Oku

Yeni Sekmede Link Açma

HTML ile sitenizde bir link (bağlantı) verdiğinizde sizin sitenizden ayrılmadan o bağlantıyı yeni bir sekmede açma işlemini yapabilirsiniz. Nasıl yapıldığına dair detaylar yazının devamında açıklanmıştır.

Devamını Oku

PDF Dosyasını Web Sitesine Ekleme
Devamını Oku

PDF Dosyasını Web Sitesine Ekleme

Bu yazımda web sitesine PDF dosyasını nasıl yerleştirebiliriz ? iframe etiketi ile birlikte pdf dosyasını kullanışlı bir şekilde gösterebiliriz bu konulardan bahsettim. Detaylar için yazımı inceleyebilirsiniz.

Devamını Oku