Php SMTP ile Mail Gönderme (İletişim Formu) Yapımı

Php SMTP ile Mail Gönderme (İletişim Formu) Yapımı

sola ok  Kaldırılan İçerikler

29.01.2016

16,267 Gösterim

Bu içeriği 2 dakikada okuyabilirsiniz.

Php ile İletişim Formu Scripti


Php ile iletişim formu yapılırken genel olarak php mail fonksiyonu kullanılır. Buna alternatif olan ve mailin gitmesini garanti eden bir diğer yol, SMTP ile iletişim formu üzerinden mail göndermektir. SMTP'nin açılımı, Simple Mail Transfer Protocol'dür. Elektronik posta gönderme protokolüdür. Php'nin normal mail fonksiyonu, herahangi bir doğrulama şartı olmadan istediğimiz bir gönderen adresi tanımlayıp gönderilmeye çalışılır. SMTP'de mail göndermek için gerçek bir mail hesabına ihtiyaç vardır. Bu da, php'nin normal mail fonksiyonuyla karşılaştırıldığında, maillerin gerçekliği ve güvenilirliği daha yüksek olduğundan, giden maillerin spam (gereksiz) klasörüne düşme ihtimali azdır.

Php SMTP Sınıfı olan PHPMailer ile mail göndermek için aşağıdaki linke tıklayıp, PHPMailer sınıfına ait dosyaları indirmeniz gerekmektedir. İndirdiğiniz .rar dosyasının içinde bulunan "class.phpmailer.php", "class.smtp.php", "class.pop3.php" adlı dosyaları sunucunuzun ftp dizinine atın.

PHPMailer sınıfı Dosyaları | İNDİR

Aşağıda bulunan hazırlamış olduğum temel iletişim formu ve altındaki php kodları içinde bulunan mail bilgilerini kendinize göre düzenledikten sonra, web sitenizde kullanarak php iletişim formunuzu çalıştırabilirsiniz.
<meta charset="utf-8"/>
<form method="post">
İsim<br/><input type="text" name="ad"/><br/>
Konu<br/><input type="text" name="konu"/><br/>
E-Posta<br/><input type="text" name="eposta"/><br/>
Mesaj<br/><textarea name="mesaj"/></textarea><br/>
<input type="submit" value="GÖNDER" />
</form>
<?php
if(isset($_POST['ad']) && isset($_POST['eposta']) && isset($_POST['konu']) && isset($_POST['mesaj'])) {
 function epostakontrol($email){if (filter_var($email, FILTER_VALIDATE_EMAIL)){return 1;} else {return 0;}}
 $gelen_mail = $_POST['eposta']; $mail_kontol=epostakontrol($gelen_mail);

 if(empty($_POST['ad']) || empty($_POST['eposta']) || empty($_POST['konu']) || empty($_POST['mesaj'])) {
  echo 'Lütfen boş yer bırakmayın.';
 } else if($mail_kontol == "0"){echo 'Lütfen e-posta adresini doğru girin.';} else{
  include 'class.phpmailer.php';
   $mail = new PHPMailer();
   $mail->IsSMTP();
   $mail->SMTPAuth = true;
   $mail->Host = 'mail.site.com';
   $mail->Port = 587;
   $mail->Username = 'mail@adresi.com';
   $mail->Password = 'Mail Şifresi';
   $mail->SetFrom($mail->Username, $_POST['ad']);
   $mail->AddAddress('mail@site.com', 'İsim Soyisim');
   $mail->CharSet = 'UTF-8';
   $mail->Subject = $_POST["konu"];
   $mail->MsgHTML('İsim:'.$_POST["ad"].'<br/>
       Konu:'.$_POST["konu"].'<br/>
       E-Posta:'.$_POST["eposta"].'<br/>
       Mesaj:'.$_POST["mesaj"].'<br/>');
if($mail->Send()) { echo 'Mesajınız başarıyla gönderildi.';}
else { echo 'Mesaj gönderirken bir hata oluştu ve girmiş olduğunuz bilgiler alınamadı.' . $mail->ErrorInfo;}
 }}
?>

Yukarıdaki kodları kopyalamakla uğraşmak istemiyorsanız aşağıdaki linke tıklayıp dosya halinde indirebilirsiniz.

Php SMTP ile Mail Gönderme (İletişim Formu) Scripti | İNDİR



Bu içeriği MasivaTurk.com sitesini kaynak göstererek kullanabilirsiniz. İçeriklerin; MasivaTurk.com sitesi kaynak gösterilmeden herhangi bir web sayfasında, sosyal medyada ve görsel basında yayınlanması yasaktır. Ayrıntılı bilgi için Kullanım Koşulları sayfasını okuyabilirsiniz.

29.01.2016

İçerik hakkında soru sorabilir veya yorumda bulunabilirsiniz.

İsim
Web Site
E-Posta
Mesaj

Yorumlar (4)

  1. Alper

    Merhaba. Ben kendi iletişim formumda alanları şu şekilde yaptım doğru mu acaba? $from = 'From: $_POST["email"]'; $sendTo = 'To: '; $subject = 'Konu: $_POST["subject"]';

    • Furkan Kandemir

      Kullandığınız değişken isimlerini değiştirmeniz bir sorun oluşturmaz. Kodu kendinize göre düzenleyebilirsiniz.

  2. Merhaba, öncelikle iletişim formu için çok teşekkürler. Sitemde mükemmel çalışıyor. Sizden bir ricam daha olacak; bu sayfanızdaki gibi yorumlar kutucuklarını siteme uyarlamak istiyorum. Bu konuda da yardımcı olabilirseniz minnettar kalacağım. Teşekkür ederim.

    • Furkan Kandemir

      Yorumunuz için teşekkür ederim. Sitede bulunan her şey tarafımca kodlanmıştır, bu yüzden, sitedeki herhangi bir tasarımın farklı siteye uyarlanması gibi durumlar, istenilse dahi olmamaktadır. Sitenin tasarımı html/css olduğundan, bu uyarlama durumu olağan dışı. Ancak ekran görüntüsü alınıp, html/css kodları kullanılarak benzeri veya aynısı yapılabilir.

  3. Taner Dora

    Merhaba. Formda yer alan tüm yönergeleri eksiksiz yerine getirdiğim halde form göndermeyi başaramadım. Muhakkak atladığım bir nokta var. Benim asıl görüşmek istediğim konu şu. Bir web sitesi hazırlıyorum ve oldukça şık bir iletişim formu var elimde fakat kodları tam olarak çözümleyememem nedeniyle sunucuya iletemiyorum formu. Direkt olarak iletişim formundan sunucuya göndermem gerekiyor fakat web tasarımıyla profesyonel olarak ilgilenmediğim için anlamakta güçlük çekiyorum.Bu konuda yardımcı olabilir misiniz? Tüm görselleri ve kodları mail adresine gönderebilirim. Cevabınızı bekliyorum şimdiden teşekkürler.

    • Furkan Kandemir

      Merhaba, yukarıda anlatılan kısım; ziyaretçinin forma girdiği bilgileri, site sahibinin belirlediği e-postaya gönderme işlemidir. Bahsettiğiniz "sunucuya iletmek"ten kasıt, veri tabanına kaydetmek ise eğer, bu farklı bir konuya giriyor. E-posta adresinize mail gönderdim.

  4. Volkan Özüdoğru

    Üstadım selamlar. Bu smtp ile iletişim formu olayını bir türlü halledemedim. Kafayı yemek üzereyim diyebilirim. Bu iş zor değil sanırım ama ben neden yapamıyorum anlayamadım gitti. Eğer zamanınız olursa sizden bu konuda yardım isteyecektim. Olumlu yada olumsuz mailinizi bekliyorum...

    • Furkan Kandemir

      E-Posta gönderdim.


Bu İçerikler de İlginizi Çekebilir...

jQuery - Değişen Arka Plan Kodu
21.11.2015
2,912 Gösterim

jQuery - Değişen Arka Plan Kodu

Web sitenizin arka plan görselinin belirli aralıklarla sizin belirlediğiniz görseller arasında değişmesi için gerekli olan javascript kodu.

Üzerine Gelince Büyüyen Resimler
13.12.2015
3,625 Gösterim

Üzerine Gelince Büyüyen Resimler

Web siteleri için, mouse ile üzerine gelindiğinde büyüyen resim kodları

Php ile Şifreli Sayfa Yapımı
28.01.2016
2,812 Gösterim

Php ile Şifreli Sayfa Yapımı

Php ile sahibi olunan bir web sitesinin herhangi bir sayfasına, basit bir şekilde şifre koymak mümkündür. Sayfaya giriş yapma izni bulunan, birden fazla kullanıcı adı ve kullanıcı şifresi tanımlanabilir.

Amazing Slider Yazısını Kaldırma
21.11.2015
3,923 Gösterim

Amazing Slider Yazısını Kaldırma

3 boyutlu slider uygulaması Amazing Slider'ın ücretsiz versiyonunda, slider'ın üzerinde bulunan "Amazing Slider" yazısı kaldırılamıyor. Bu konuda yazının nasıl kaldırabileceğini öğrenebilirsiniz.

Görsellere Büyüteç ile Bakma
27.12.2015
2,092 Gösterim

Görsellere Büyüteç ile Bakma

Web sitenizde bulunan görsellerin üzerine gelindiğinde büyüteç efekti ile görseli görüntülemek için gereken HTML/CSS kodları.

X

MasivaTurk.com içeriklerini
YouTube'dan takip edebilirsiniz.

YOUTUBE KANALIMA ÜCRETSİZ
ABONE OLMAK İÇİN TIKLA