PHP | PHPMailer SMTP ile E-posta Göndermek


HP ile SMTP üzerinden e-posta göndermenin birden fazla çözümü var aslında.  Bu yazıda, php  mailer sistemlerin içinde en basit ve kullanılması en rahat olan PHPMailer kullanıyoruz.

Mail gönderim işlemi için neden PHPMailer kullandığımızın kısa bir özetini yapalım ;




PHPMailer Özellikleri

PHP ile mail gönderen en popüler class bu
Drupal, Joomla, Yii, WordPress gibi frameworklerin hepsine uyumlu çalışabiliyor
SMTP sunucu desteği ile, Hotmail, Gmail gibi e-mail hesapları üzerinden e-mail gönderimi yapılabiliyor
TOs, CCs, BCCs and REPLY-TOs bütün e-mail opsiyonları kullanılabiliyor
HTML / Text mail formatları destekliyor
 8bit, base64, binary ve yazdırılabilir (printable) encoding destekliyor
LOGIN, PLAIN, NTLM ve CRAM-MD5 authorizasyon mekanizmalarına uyumlu
PHP 5 ve üstü dilleri destekliyor
Hata ayıklama Error-handling özelliği mevcut
Maile dosya (attachment) eklenebiliyor
Geniş lokalizasyon imkanı var. (Türkçe dahil epey dil ve karakter destekliyor)
IsSMTP();

// Test / Gerçek işlem
$mail->SMTPDebug = 2;

// SMTP Authentication aktif et
$mail->SMTPAuth = true;

//SMTP Server
$mail->Host = "host.smtpserver.com";

// Port SMTP Sunucu 25 / 587
$mail->Port = 25;

// SMTP kullanıcı adı
$mail->Username = "user@smtpserver.com";

// SMTP kullanıcı şifre
$mail->Password = "user_pass";

// gönderen hesap
$mail->SetFrom("from@yourdomain.com", "Gönderen isim");

// Mail konusu
$mail->Subject = "PHPMailer SMTP Testing";

// Mail içeriği
$body = "mailin içeriği, html kodları da olabilir;
$mail->MsgHTML($body);

// hedef adresi ekle
$to = "info@yourdomain.com";
$mail->AddAddress($to, "SMTP Test");
// Maili gönder
if(!$mail->Send())
{
echo "Mailer Hata: " . $mail->ErrorInfo;
}
else
{
echo "Mesaj başarıyla gönderildi!";
}
?>



Gmail ve Hotmail için PHPMailer SMTP özellikleri

Gmail için Ayarlar

$mail = new PHPMailer();
$mail->IsSMTP();
$mail->CharSet = 'UTF-8';
$mail->Host = "smtp.gmail.com";
$mail->SMTPDebug = 0;
$mail->SMTPAuth = true;
$mail->Port = 465;
$mail->Username = "username@gmail.com";
$mail->Password = "password";

Hotmail için ayarlar

$mail = new PHPMailer();
$mail->IsSMTP();
$mail->CharSet = 'UTF-8';
$mail->Host = "smtp.live.com";
$mail->SMTPDebug = 0;
$mail->SMTPAuth = true;
$mail->Port = 465;
$mail->Username = "username@hotmail.com";
$mail->Password = "password";

Hiç yorum yok:

Yorum Gönder

 

Sample Text

Sample Text