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


PHPMailer Nedir?

Günümüzde PHP programlama diline ait olan mail() fonksiyonu, herhangi bir kimlik doğrulaması yapmadan mail gönderimi sağlamaktadır. Bu mailler de spam olarak gelebileceğinden, spam mailleri önlemek amacıyla engellenmiştir. Bu durumda PHP dili ile yazılan, sunucuda SMTP ile kimlik doğrulaması yapabilen PHP Mailer devreye girmektedir. Bu yazılım ile web siteniz üzerinden bir mail adresinden istediğiniz bir mail adresine ya da mail adreslerine ileti gönderimi yapabilirsiniz.

PHP Mailer, aynı zamanda çok sık kullanılan hazır web site uygulamalarından, Joomla veWordPress gibi uygulamalarının hepsine uyumludur. SMTP sunucu desteği ile, alan adı uzantılı kurumsal maillerinizin dışında, Hotmail, Gmail gibi e-posta hesapları üzerinden de ileti gönderimini gerçekleştirebilirsiniz.

PHPMailer Nasıl Kullanılır?

Öncelikle, normal kullanılabilen bir mail adresi oluşturmanız ve şifresini unutmamanız gerekmektedir. Aşağıdaki linkten örnek olarak hazırlanan dosyaları indirebilir ve düzenleyerek web hosting içine aktarabilirsiniz.

Buradan, örnek olarak hazırlanmış dosyaları indirerek inceleyebilirsiniz.

Klasördeki dosyalarda, form.php dosyasında örnek olarak hazırlanmış mail formu, class.phpmailer.php, class.smtp.php, gonder.php yazılım dosyaları ve language klasörü bulunuyor.

Aşağıdaki gonder.php yazılım dosyasında yer alan kod bölümünde, sadece değiştirmeniz gereken yer Host , Username ve Password değerleriniz. Mail servis sağlayıcınıza göre de Port değerlerini değiştirmeniz gerekmektedir.

$mail->Username          = “mailadi@alanadiniz.site”;// SMTP mail kullanici adi

$mail->Password           = “mailsifreniz”; //SMTP mailinizin sifresi

Natro SMTP Ayarları

$mail->Username          = “mailadi@alanadiniz.site”;// SMTP mail kullanici adi

$mail->Password           = “mailsifreniz”; //SMTP mailinizin sifresi

Yandex Smtp Ayarları:

$mail->SMTPSecure = ‘tls’;

$mail->Host = ‘smtp.yandex.com’;

$mail->Port = 587;

Gmail Smtp Ayarları:

$mail->SMTPSecure = ‘ssl’;

$mail->Host = ‘smtp.gmail.com’;

$mail->Port = 465;

  • Mail içerik ayarlarınızı, aşağıdaki örnekte olduğu gibi özelleştirebilirsiniz. Buradaki bilgiler form.php deki formdan gelen bilgilerdir. 
//Mailinizin gövdesi: (HTML ile)

$body  = “”.”Mail İçeriği Başlığı”.”<br><br>”;

$body .= “Gönderen Adi : “.$_POST[“adsoyad”].”<br>”;

$body .= “E-posta Adresi : “.$_POST[“mailiniz”].”<br>”;

$body .= “Telefonu: “.$_POST[“telefon”].”<br>”;

$body .= “Yasadigi yer: “.$_POST[“yer”].”<br>”;

$body .= “Konu;: “.$_POST[“konu”].”<br>”;

$body .= “Mesaj: “.$_POST[“mesaj”].”<br>”; 

  • Aşağıdaki yazılım bölümünde ise; mail gönderimi sonunda kullanıcıya istediğiniz mesajı iletebilirsiniz.

if ($mail->Send()) echo “Sorunuz gönderildimiştir. <br>Natro Sistem Uzmanlarımız müsait olduğunda yanıtlayacaktır.”; 

else echo “Form göndermede hata oldu! Daha sonra tekrar deneyiniz.”;

  • Mailleriniz hangi maile ya da maillere gidecekse, mail adreslerinizi AddAddress ile ekleyebilirsiniz. 

$mail->AddAddress(“mailadi@alanadiniz.site”); // –  Mail gönderilecek adresler 

  • Mailinizde CC ve BCC eklemek için ise;

$mail->addCC(‘mailadi@alanadiniz.site’);// cc  mail adresi

$mail->addBCC(‘mailadi@alanadiniz.site’);// bcc  mail adresi 

  • Mail içine herhangi bir dosya ya da resim eklemek için;

$mail->AddAttachment(‘images.png’); // – Mail içinde resim göndermek için


Bu İçeriği Beğendiyseniz Arkadaşlarınızla Paylaşın

Natro Blog
Türkiye - İstanbul Merkezli natro.com; 1999 yılından bu yana Alan adı servisleri, web Hosting, sunucu kiralama ve barındırma, Güvenlik çözümleri gibi ürünlerle uluslararası web hosting sektöründe hizmet vermektedir.

5 Comments

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

  1. Güzel anlatımınız için teşekkürler..
    “Mail içinde resim göndermek için” yerine mail üzerine ek tanımlamak için denilebilirdi.

  2. Güzel Paylaşım. Teşekkürler. Ben wordpress de yeniyim. Bu düzenlediğimiz dosyaları nereye kaydediyoruz ve nasıl?

  3. Bir kaç sorum olacak.
    1:Sizin dosyanızı indirdim. Klasörde dediğiniz dosya isimleri yok. Öncelikle yazıda onu düzeltiniz.
    2: Sizin formda dediğinizi yaptığımda ” Gönderim Hatası: Language string failed to load: from_failedsemih@semihturkel.com.tr” hatayı almaktayım. Sizin kendi yapmış olduğunuz form üstünden çalıştım. Yardımcı olabilir misiniz ?

  4. Belirtmiş olduğunuz gerekli dosyalar ekte yok. Ayrıca formu çalıştırdığınızda Load SMTP, yada language hatası veriyor. Ayrıca üstteki bilgiler yerine örnek form doldurulmus olsa daha faydalı olacak.

En Hızlı WordPress'te %80'e varan İndirim Fırsatı! | SSD Platform ve Otomatik Yedekleme İle Fırsatı Yakala
+