Php Smtp İle Mail Gönderimi

php-smtp-ile-mail-gonderimi

Php Smtp İle Mail Gönderimi

Merhaba arkadaşlar bu dersimizde sizlerle smtp ile mail gönderimini işleyeceğiz.

SMTP (Simple Mail Transfer Protocol) Elektronik posta gönderme protokolüdür. PHP’nin normal mail fonksiyonuyla genelde server adına ve herhangi bir doğrulama yapmadan istediğimiz bir gönderen adresi tanımlayarak göndermeye çalışıyoruz, SMTP’de ise maili gönderebilmek için gerçek bir mail hesabına ihtiyacımız var. Mail fonksiyonuna kıyasla bu şekilde gönderilen maillerin doğruluğu ve güvenilirliği daha yüksek olduğu için spam (önemsiz) klasörlerine düşme olasığı da azdır.

Bu smtp ile mail gönderimine bir örnek hazırlayalım iletişim formu yapalım…

Öncelikle iletişim formumuzun bulunduguğu html dosyamızı oluşturalım..

<?php

<form action="mail/mail.php" method="POST">
<input name="isim" placeholder="Adın" /><br>
<input name="eposta" placeholder="E-posta adresiniz.." /><br>
<input name="tel" placeholder="Telefon numaranız" /><br>
<input name="mesaj" placeholder="Mesajınız" /><br>
<input type="submit" name="mesajyolla" value="Mesaj gönder" />
</form>

Şimdi bu formumuzu post ettigimiz php mailler sınıfını kullandıgımız php dosyamızı yazalım…

<?php

<?php
require_once 'class.phpmailer.php';
if(isset($_POST["mesajyolla"])){    
$gonderen       = "[email protected]";    
$parola         = "mailsifresi";    
$hedef          = $gonderen;    
$site           = "yavuz-selim.com"; // www. olmadan sitemizi yazıyoruz    
$isim           = strip_tags(trim($_POST['isim']));    
$mails          = strip_tags(trim($_POST['eposta']));    
$tel            = strip_tags($_POST['tel']);    
$mesaj          = strip_tags(trim($_POST["mesaj"]));

if(!$isim || !$mails || !$tel || !$mesaj){
echo "<script>alert('Lutfen tum alanlari doldurunuz')</script>";
header('refresh:0;url=iletisim.php');

}else{    

$mail = new PHPMailer();    
$mail->Host     = 'webmail.'.$site;    
$mail->SMTPAuth = true;    
$mail->Username = $gonderen;    
$mail->Password = $parola;    
$mail->IsSMTP();    
$mail->AddAddress($hedef);    
$mail->From     = $gonderen;    
$mail->FromName = 'ILETISIM MESAJI';    
$mail->CharSet  = 'UTF-8';    
$mail->Subject  = $isim;      
$content = '<div style="background:#222222;color:#ddd;text-align:center;padding:10px;font:16px Arial,sans-serif;">ILETISIM MESAJI</div>  <div style="background:#f3f3f3;line-height:1.5em;padding:10px 5px;color:#222222;font:14px Arial,sans-serif;">    <p><strong>AD SOYAD :</strong>&nbsp;'.$isim.' &nbsp; | &nbsp;  <strong>TLF :</strong>&nbsp;<a style="color: #428bca" href="tel:'.$tel.'">'.$tel.'</a>&nbsp; | &nbsp;<strong>E-POSTA ADRESİ :</strong>&nbsp;<a style="color: #428bca" href="mailto:'.$mails.'">'.$mails.'</a>    </p>    <hr />    <p><strong style="display: block;margin-top:5px;">İÇERİK :</strong></p>    <p><div style="word-wrap: break-word;margin-top:5px;">'.$mesaj.'</div></p>     </div>';     

$mail->MsgHTML($content);    
if($mail->Send()) {      
echo '<meta charset="utf-8"><div style="background:#f3f3f3;color:#222222;padding: 10px;display:block;">Mesajaınız başarıyla gönderildi..</div>';     
header("refresh:3;url=https://yavuz-selim.com");    
} else {        
echo '<meta charset="utf-8"><div    style="background:#f3f3f3;color:#222222;padding: 10px;display:block;"><strong>Hata:</strong> İşlem başarısız!<br>';        echo $mail->ErrorInfo;        echo '</div>';    }}

}else{header("location:https://yavuz-selim.com");}
?>

Biraz css ile oynayarak bir iletişim formu yaptık ama olsun 🙂 Yapamayan olursa konu altına yorum atarak bana ulaşabilir..

İlgili sınıf dosyasını Buradan indirebilirsiniz.

Sonraki konuda görüşmek üzere
Kanalıma abone olmayı unutmayın 🙂

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.

Yavuz Selim

Yavuz selim