Merhabalar bugün phpmailer class’ını inceleyeceğiz.
Bildiğiniz üzere günümüzde mail oldukça önemli bi hal aldı. Web sitelerinde bilgilendirme,pazarlama ve iletişim vb. sebeplerle php ile mail gönderme işlemleri yapmak durumunda kalıyoruz.
Tabi bu durumda php’nin bize sunmuş olduğu mail() fonksiyonu, her ne kadar kimlik doğrulaması yapmadan php mail gönderme sorunumuzu cözüyor olsada bir çok sunucu kimlik doğrulaması yapmayan bu fonksiyonu spam olarak algılamaktadır.İşte burada SMTP ile kimlik doğrulaması yapabilen PHPMailer Class’ı devreye girmektedir.Peki nedir bu PHPMailer ?
PhpMailer, bir çok CMS’ye (Wordpress vb.) uyumlu olmasıyla birlikte SMTP kimlik doğrulama ve HTML E-Mail , dosya ekleri gönderilebilmesini sağlayan bir classdır.
Eğer bir sunucunuz var ise mevcut bir mail konfigürasyon dosyasını PhpMailer sınıfına entegre ederek direkt olarak kullanabilirsiniz.Yazının sonunda vereceğim örnek dosyayı inceleyebilirsiniz.
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = "mail.alanadi.com veya IP";
$mail->SMTPAuth = true;
$mail->Username = "deneme@alanadi.com";
$mail->Password = "şifre ";
$mail->From = "deneme@alanadi.com";
$mail->Fromname = $_POST['isim'];
$mail->AddAddress("ornek@alanadi.com","Mail gönderimi");
$mail->AddReplyTo('yanitespotasi@alanadi.com', 'Yanıt İsmi');
$mail->Subject = $_POST['konu'] . $_POST['eposta'];
$mail->Body = $_POST['mesaj'];
Yukardaki kod bloğunda mail sınıfına erişim sağladık ve gerekli bilgileri doldurduk.Gmail veya Yandex ile mail gönderimi için
$mail->Host kısmına
GMAİL STMP İÇİN;
$mail->SMTPSecure =’ssl’;
$mail->Host =’smtp.gmail.com’;
$mail->Port=465;
YANDEX SMTP İÇİN;
$mail->SMTPSecure =’ssl’;
$mail->Host =’smtp.yandex.com’;
$mail->Port=587;
DOSYA EKİ VEYA RESİM EKLEMEK İÇİN;
$mail->AddAttachment(‘dosyayolu’);
URL DOSYA PAYLAŞIMI İÇİN;
$mail->addStringAttachment(file_get_contens($url),’benimdosyam.pdf’);
PHP ÇOKLU MAİL GÖNDERME
Php ile çoklu mail gönderme için $mail->AddAddress(); kısmını coğaltmanız yeterlidir.Gönderilen mailin html formatında olmasını istiyorsanız eğer “$mail->isHTML(true);” yazmanız yeterlidir.
Mehmet
2020-03-13 11:22:36Teşekkürler güzel anlatım