18 Haziran 2018
Kategori:
Seo
Yorumlar: 1

Php ile Mail Gönderimi (İletişim Formu)

Php ile Mail Gönderimi (İletişim Formu)

Bu yazımda php ile smtp kullanarak iletişim formu oluşturmayı ve bu iletişim formu üzerinden mail göndermeyi anlatacağım. Bütün hosting firmaları direk mail göndermeyi kapatmıştır. Bunun nedeni smtp kullanılmadan gönderilen mailler spam klasörüne düşmesidir. Smtp mail fonksiyonlarını kullanarak çok kolay bir şekilde iletişim formu üzerinden mail gönderebilirsiniz.

İletişim Formunu hazırlamadan önce PhpMailer sınıfına ait dosyaları indirmeniz gerekecektir. “class.phpmailer.php”, “class.smtp.php”, “class.pop3.php” 3 adet dosyayı indirerek iletişim sayfanızla aynı dizine atacaksınız. Farklı dizine atarsanız çalışmaz.  3 dosyayı indirmeniz için gereken bağlantıyı aşağıda vereceğim.

Php Mailer Sınıf dosyalarını İndir 

Not: İletişim formu hazırlamadan önce domain uzantılı mail adresini oluşturmalısınız. Oluşturmak için hosting firmanızdan yardım alabilirsiniz.

İletişim Formunu Hazırlama

Aşağıda hazırlamış olduğum iletişim formu ve gerekli php kodlarını kendinize göre düzenleyeceksiniz. Burada önemli olan php kodlarıdır. İletişim formunu internetten bularakta kendinize göre düzenleyebilirsiniz.

 

<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;}
}}
?>

 

Burada düzenleyeceğiniz Yerler ;

$mail->Host = ‘mail.site.com’; = site.com yerine sitenizin ismi.

$mail->Port = 587; = Smtp port adresinizi hosting firmanızdan öğrenin

$mail->Username = ‘mail@adresi.com’; = Domain uzantılı mail adresiniz

$mail->Password = ‘Mail Şifresi’;  = Mail adresinizin Şifresi

$mail->AddAddress(‘mail@site.com’, ‘İsim Soyisim’); = Burayada hangi mail adresinize mesajların gelmesini istiyorsanız yazıyorsunuz.

Not: Bu Kodları uygulayıp çalıştırdım başarılı bir şekilde mail gönderimi yapıldı. Bu işlemi hem windows hosting hemde linux hosting üzerinde çalıştırdım. İkisinde de sonuç aldım ve kullanıyorum.

Bu ayarlardan sonra artık smtp üzerinden mail gönderimi yapabileceksiniz. İşlemler bu kadardır. Soru ve görüşlerinizi yorum kısmından bildirebilirsiniz.

 

Bir önceki yazımız olan WordPress Tema İsmini Değiştirme / Gizleme başlıklı makalemizde tema adı saklama ve değiştirme hakkında bilgiler verilmektedir.

One response on “Php ile Mail Gönderimi (İletişim Formu)

  1. […] önceki yazımız olan Php ile Mail Gönderimi (İletişim Formu) başlıklı makalemizde php stmp  hakkında bilgiler […]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir