PHPMailer Nedir ve Nasil Kullanilir

PHPMailer Nedir ve Nasıl Kullanılır ?

Bu eğitselde PHPMailer kullanımı ile ilgili yönergeler yer almaktadır.

PHPMailer nedir?

PHP programlama dili ile hazırlanmış yazılımlarda kullanılabilen, bir email adresine mail göndermek için sizin belirlediğiniz bağlantı bilgileriyle mail sunucusu ile haberleşerek uygun ortamı hazırlayan bir PHP sınıfıdır.

PHPMailer neden gerekli?

PHP programlama dilinin standart mail gönderme fonksiyonu olan mail() fonksiyonu günümüzde tüm paylaşımlı hosting servislerinde -spam mail gönderimini önlemek amacıyla-  engelli durumdadır. Ancak, bu sunucu üzerinden mail gönderilemeyeceği anlamına gelmemektedir. Alternatif olarak, sunucu ile SMTP protokolü aracılığıyla haberleşen ve sunucu üzerinde kimlik doğrulama yapan bir mailer script kullanılabilir. PHPMailer, bu ihtiyacı en iyi şekilde karşılamaktadır.

PHPMailer nasıl kullanılır?

Alt başlıkları takip ederek bir iletişim formu ve mail göndermek için bir PHP sayfası oluşturabilirsiniz.

Email hesabı oluşturun

PHPMailer’in mail sunucusunda kimlik doğrulama yapabilmesi için gerçek bir email hesabına ihtiyacı vardır. Öncelikle bir email hesabı oluşturup, şifresini not ediniz.

İletişim formu sayfası oluşturun

PHP uzantılı bir dosya oluşturup, aşağıdaki kodları bu dosyaya dahil ediniz.

<?php header("Content-type: text/html; charset=utf-8"); ?>
<form action="sendmail.php" method="post">
<label for="name">İsim:</label><br>
<input type="text" name="name" id="name"><br>
<label for="mail">Mail</label><br>
<input type="text" name="mail" id="mail"><br>
<label for="subject">Konu</label><br>
<input type="text" name="subject" id="subject"><br>
<label for="message">Mesajınız</label><br>
<textarea name="message" cols="30" rows="10" id="message"></textarea><br><br>
<input type="submit" value="Gönder">
</form>

İşlem sayfası oluşturun

sendmail.php ismiyle bir PHP uzantılı dosya oluşturup, aşağıdaki kodları bu dosyaya dahil ediniz.

<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require 'src/Exception.php';
require 'src/PHPMailer.php';
require 'src/SMTP.php';


$mail = new PHPMailer(true);
try {
 //Server settings
 $mail->CharSet = 'UTF-8';
 $mail->SMTPDebug = 0; // debug on - off
 $mail->isSMTP(); 
 $mail->Host = 'mail.alanadiniz.com'; // SMTP sunucusu örnek : mail.alanadi.com
 $mail->SMTPAuth = true; // SMTP Doğrulama
 $mail->Username = 'isim@alanadiniz.com'; // Mail kullanıcı adı
 $mail->Password = 'Şifreiniz'; // Mail şifresi
 $mail->SMTPSecure = 'tls'; // Şifreleme
 $mail->Port = 587; // SMTP Port
$mail->SMTPOptions = array(
 'ssl' => array(
 'verify_peer' => false,
 'verify_peer_name' => false,
 'allow_self_signed' => true
 )
);

 //Alıcılar
 $mail->setfrom('isim@alanadiniz.com', 'İletişim Formu');
 $mail->addAddress($_POST['mail']);
 $mail->addReplyTo($_POST['mail'], $_POST['name']);
 //İçerik
 $mail->isHTML(true);
 $mail->Subject = 'İletişim Formu.';
 $mail->Body = $_POST['message'];

 $mail->send();
 echo "Mesajınız İletildi --> ".$_POST['mail']."<br>";
} catch (Exception $e) {
 echo 'Mesajınız İletilemedi. Hata: ', $mail->ErrorInfo;
}

?>

İşlem sayfasını düzenleyin

6. satırdaki değişkene mail sunucusunun adresini yazıyoruz. Eğer cPanel veya Plesk Panel kullanıyorsanız; mail.domain.com, Maestropanel kullanıyorsanız smtp.domain.com şeklinde düzenlemelisiniz.

8.satırdaki değişkene oluşturduğunuz email hesabını yazınız.
9.satırdaki değişkene oluşturduğunuz email hesabının şifresini yazınız.
10.satırdaki değişkene bağlanmak istediğiniz şifrleme yöntemini yazınız, tls veya ssl kullanabilirsiniz.
11.satırdaki değişkene bağlandığınız şifrleme yöntemine göre port numarası giriniz. TLS kullanıyorsanız 587, SSL kullanıyorsanız 465 yazınız.
12.satırdaki değişkene 8.satırda yazdığınız email hesabını yazınız.
13.satırdaki değişkene gelen iletideki görüntülenecek ismi yazınız.
15.satırdaki değişkene iletinin gönderileceği email adresini yazınız.

PHPMailer dosyalarını yükleyin

PHPMailer’i Github üzerinden indirip, bu dosyalarınızın bulunduğu dizine yükleyiniz.
https://github.com/PHPMailer/PHPMailer/archive/master.zip adresinden bu dosyaları indirebilirsiniz. Src klasörünü sitenize yüklemeniz yeterli olacaktır.

Hata inceleme

Eğer mail gönderme esnasında problem yaşıyorsanız aşağıdaki kod ile hata iletisini aktif edebilirsiniz. Bu kodu 14. satırdan önce yazmalısınız.

$phpmailer->SMTPDebug = 2;

Türkiye'nin En Çok Tavsiye Edilen Domain, Hosting ve Bulut Servis Sağlayıcısı
İnternet sitesi https://www.alastyr.com
Yazı oluşturuldu 440

PHPMailer Nedir ve Nasıl Kullanılır ?” üzerine 4 görüş

  1. yazı açıklayıcı fakat web sitene koyduğun sağ tık engeli yüzünden hiçbir işe yaramıyor. sadece zaman kaybı oldu benim için. bilmeni istedim. benim gibi hüsranla yorum bile yapmadan giden çok kişi vardır eminim. düzeltirsen bu durumu yorumlar da artar teşekkürler de. iyi çalışmalar

    1. Merhaba Ahmet Bey, geri bildiriminiz için teşekkür ederiz. Sağ tık engelleme özelliği kalıcı olarak kapatılmıştır. İyi günler dileriz.

  2. CLIENT: 220 smtp.gmail.com ESMTP v17-20020a170906293100b0077a11b79b9bsm3662325ejd.133 – gsmtp Bu hatayı alıyorum nedeni nedir acaba

  3. Form çalışıyor anca mesaj kısımdan hariç bilgiler iletilmiyor. Yani isim, mail, konu filan iletilmiyor. Sebep?

Bir cevap yazın

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

Benzer yazılar

Aramak istediğinizi üstte yazmaya başlayın ve aramak için enter tuşuna basın. İptal için ESC tuşuna basın.

Üste dön