PHPMailer Kurulumu hakkında ihtiyacınız olan tüm bilgileri sizler için derledik! SMTP ayarlarından kurulum adımlarına kadar her şeyi detaylı şekilde inceleyin ve PHPMailer'ı kolayca kullanmaya başlayın
Translation: We have gathered all the information you need about PHPMailer installation! Learn the SMTP settings and installation steps in detail and start using PHPMailer easily

PHPMailer, bir SMTP sunucusu üzerinden e-posta göndermek için kullanılan bir kütüphanedir. Bu rehberimizde, PHPMailer kurulumu ile e-posta gönderme işlemlerini kolayca gerçekleştirebilirsiniz. PHP kodları ile yazılmış olan bu kütüphane sayesinde, farklı e-posta servis sağlayıcılarını kullanarak e-posta göndermeniz mümkündür. Ayrıca, PHPMailer kurulumu ve ayarlamaları oldukça kolaydır.
PHPMailer kurulumu için öncelikle dosyaların yüklenmesi gerekmektedir. Bu dosyaları sayfanıza dahil ettikten sonra, SMTP sunucusu ayarları ve e-posta ayarlarınızı yapmanız gerekmektedir. SMTP sunucusu ayarlarında belirttiğiniz bilgiler, PHPMailer sınıfı aracılığıyla e-posta gönderme işlemini gerçekleştirdiğiniz sunucuyu belirler. E-posta ayarlarınızda ise, gönderici, alıcı, konu ve içerik gibi bilgileri belirtirsiniz.
PHPMailer kurulumu ve ayarlamaları tamamlandıktan sonra, e-posta gönderme işlemi oldukça kolaydır. PHPMailer sınıfı içerisinde yer alan mail gönderme fonksiyonunu kullanarak, belirlediğiniz SMTP sunucusu ve e-posta ayarları sayesinde e-postanızı gönderebilirsiniz. Ayrıca, e-posta gönderme işlemleri için farklı fonksiyonlar da oluşturarak, bu fonksiyonları farklı dosyalarda da kullanabilirsiniz. Bunun yanı sıra, PHPMailer ile e-posta şablonları göndermek için de özelleştirilmiş şablon dosyaları hazırlayabilirsiniz.
SMTP Sunucusu Ayarları
E-posta göndermek için SMTP (Simple Mail Transfer Protocol) sunucusu ayarlarını yapmak oldukça önemlidir. Bu ayarlar, e-posta gönderme işlemi sırasında kullanılacak olan username, password ve smtp host gibi bilgilerin doğru şekilde tanımlanmasını sağlar.
SMTP sunucusu, genellikle internet servis sağlayıcınız tarafından sağlanır. Ancak, farklı bir SMTP sunucusu kullanmak isterseniz öncelikle sunucu ayarları için gerekli verileri doğru şekilde tanımlamanız gerekmektedir. Bu işlem için aşağıdaki örnekleri kullanabilirsiniz:
- Username: SMTP sunucusuna bağlanmak için kullanılacak olan kullanıcı adını tanımlamak gerekir.
- Password: SMTP sunucusuna bağlanmak için kullanılacak olan şifreyi tanımlamak gerekir.
- SMTP Host: E-posta göndermek için kullanılacak olan SMTP sunucusunun adresi tanımlanmalıdır. Bu örneklerde Gmail ve Outlook'un SMTP sunucu adresleri verilmiştir:
SMTP Sunucusu | SMTP Host Adresi |
---|---|
Gmail | smtp.gmail.com |
Outlook | smtp.office365.com |
SMTP sunucusu ayarlarını doğru şekilde tanımlayarak, e-posta gönderme işlemi için gerekli olan bağlantının kurulmasını sağlayabilirsiniz.
PHPMailer Kurulumu
PHPMailer, basit ve etkili bir şekilde e-postalar göndermemizi sağlayan bir kütüphanedir. Kullanmadan önce kurulum yapılması gerekmektedir. Kurulum adımlarını şu şekilde özetleyebiliriz:
- PHPMailer dosyalarını indirin ve sunucunuza yükleyin.
- PHPMailer'in çağrılacağı PHP dosyasına require_once 'PHPMailerAutoload.php' satırını ekleyin.
- SMTP sunucu ayarlarını tanımlayın: smtp host, username, password, port, encryption.
- PHPMailer sınıfına ait nesneyi oluşturun ve SMTP ayarlarını kullanarak e-posta gönderin.
Kurulum adımlarını yerine getirerek, PHP dosyalarımızda kolayca PHPMailer sınıfını kullanabilir ve SMTP sunucusu aracılığıyla e-postalarımızı gönderebiliriz.
SMTP Sunucusu Ayarları
SMTP yani Simple Mail Transfer Protocol, e-posta gönderme işleminde kullanılan bir ağ protokolüdür. PHPMailer sınıfı da SMTP sunucusu ayarlarına sahip olduğu için herhangi bir SMTP sunucusunu kullanarak e-posta gönderebiliriz.
SMTP sunucusu ayarları belirlerken, kullanacağımız sunucunun SMTP host adresini, kullanıcı adını, şifresini ve port numarasını belirlememiz gerekir. Bu ayarları belirledikten sonra PHPMailer sınıfı ile e-posta gönderimi için hazırız.
SMTP sunucusu ayarlarında kullanabileceğimiz sunucular arasında Gmail, Outlook veya herhangi bir diğer sunucu seçeneği bulunabilir. Göndereceğimiz e-posta türüne ve sunucu seçeneklerine göre, SMTP ayarlarında bazı değişiklikler yapmamız gerekebilir.
- Gmail SMTP Ayarları: Gmail SMTP ayarları kullanırken, SMTP host olarak "smtp.gmail.com" kullanılmalıdır. Port numarası olarak 465 ya da 587 seçeneklerinden biri seçilmelidir. Kullanıcı adı ve şifre de doğru şekilde girilmelidir.
- Outlook SMTP Ayarları: Outlook SMTP ayarları kullanarak e-posta gönderirken, SMTP sunucusu olarak "smtp.office365.com" kullanılmalıdır. Port numarası olarak 587 seçeneklerinden biri seçilmelidir ve kullanıcı adı ve şifre doğru şekilde girilmelidir.
SMTP sunucusu ayarlamaları doğru şekilde yapıldıktan sonra, PHPMailer sınıfı ile e-posta gönderme işlemi başarıyla gerçekleştirilebilir.
Gmail SMTP Ayarları
SMTP sunucu ayarlarını belirlerken Gmail SMTP ayarlarının kullanılması tercih ediliyorsa, bazı ayarlamalar yapılması gerekmektedir. Gmail SMTP ayarları için öncelikle Google hesabımıza giriş yapmamız ve hesap ayarlarına gitmemiz gerekiyor. Hesap ayarlarına girdikten sonra, "Güvenlik" sekmesine tıklayarak "Daha az güvenli uygulamalara erişim" seçeneğini etkinleştirmemiz gerekiyor.
Bu adımdan sonra, Gmail SMTP ayarlarını belirleyebiliriz. SMTP ayarları şu şekildedir:
Ayar | Değer |
---|---|
SMTP sunucusu | smtp.gmail.com |
SMTP kullanıcı adı | Gmail hesap kullanıcı adı |
SMTP şifre | Gmail hesap şifresi |
SMTP bağlantı noktası | 465 (SSL/TLS) |
SMTP bağlantı noktası olarak 465 kullanıldığında, SSL/TLS bağlantısı kullanılmaktadır. Bu da daha güvenli bir bağlantı oluşturulduğunu göstermektedir.
Bu ayarlamalar yapıldıktan sonra, PHPMailer sınıfı ile kolay bir şekilde e-posta gönderimi gerçekleştirilebilir.
Outlook SMTP Ayarları
Outlook SMTP ayarları kullanarak e-posta göndermek için öncelikle Outlook kurulumunun sırasında SMTP ayarlarını yapılandırmak gerekmektedir. Bunun için, Outlook hesabına giriş yaparak sağ üst köşedeki 'Dosya' menüsüne tıklamalısınız.
Açılan menüden 'Hesap Ayarları' seçeneğine tıklayarak 'Email' sekmesine giriş yapın. Burada, kullanmak istediğiniz e-posta hesabını seçin ve 'Değiştir' seçeneğine tıklayın.
Açılan penceredeki 'Ek Ayarlar' butonuna tıklayarak 'Giden Sunucu' ayarlarına giriş yapın. 'Giden Sunucu' kutucuğunda SMTP sunucusunun adresini ve port numarasını belirtin. Ayrıca, kimlik doğrulaması gerektiriyorsa kullanıcı adı ve şifrenizi de burada girmelisiniz.
Outlook SMTP ayarlarıyla ilgili sorun yaşarsanız, sunucu ayarlarını değiştirerek deneyebilirsiniz. E-posta göndermede problem yaşarsanız, girdiğiniz SMTP ayarlarının doğru olup olmadığını kontrol edin.
PHPMailer Ayarları
PHPMailer sınıfını kullanmak için bazı ayarlamalar yapılması gerekmektedir. İlk olarak, gerekli dosyaların yüklenmesi gerekir. Bunun için PHPMailer'in resmi sitesinde yer alan dosyaları indirip, projenize dahil etmeniz gerekmektedir.
PHPMailer sınıfındaki bazı ayarlar aşağıda belirtilmiştir:
- Host: SMTP sunucu adresi
- Username: SMTP sunucusuna bağlanmak için kullanıcı adı
- Password: SMTP sunucusuna bağlanmak için şifre
- Port: SMTP port numarası (varsayılan olarak 587)
- SMTPSecure: Şifreli bir bağlantı kullanılıp kullanılmayacağı (varsayılan olarak TLS)
Bu ayarlar, e-postaların SMTP sunucusuna başarılı bir şekilde gönderilmesini sağlayacaktır.
Ayrıca, PHPMailer sınıfından farklı bir e-posta adresi kullanmak isterseniz, setFrom()
fonksiyonunu kullanabilirsiniz. Bu fonksiyon kullanılarak gönderen e-posta adresi tanımlanabilir.
PHPMailer sınıfı, e-posta mesajlarında HTML kodlarını kullanmanıza da izin verir. Bu özellik, e-posta içeriklerinin daha çekici ve profesyonel görünmesini sağlar. Ayrıca, e-posta mesajınızı yönetildiği yerde depolayarak, yönetim panelinizden daha sonra düzenleyebilirsiniz.
E-posta Gönderme
Eğer SMTP sunucusu ayarlarımızı ve PHPMailer kurulumumuzu doğru bir şekilde tamamlamışsak, şimdi e-posta gönderme işlemi için hazırız demektir. PHPMailer sayesinde, e-posta gönderme işlemi oldukça kolay ve hızlı bir hale gelmiştir. Sadece belirlediğimiz e-posta ve SMTP ayarlarını kullanarak e-postamızı gönderebiliriz.
E-posta gönderme işlemi için, PHPMailer sınıfı içerisindeki send() fonksiyonunu kullanırız. Bu fonksiyon, e-postayı belirtilen adrese gönderir. Gönderilecek olan e-posta, setFrom(), addAddress(), Subject, ve Body gibi parametreler kullanılarak oluşturulur.
Örnek olarak, e-posta oluşturma ve gönderme işlemi şu şekilde gerçekleştirilir:
Kod | Açıklama |
---|---|
$mail = new PHPMailer; | PHPMailer sınıfından yeni bir nesne oluşturuyoruz. |
$mail->setFrom('gonderen@ornek.com', 'Gönderen Kişi'); | Gönderen kişinin e-posta adresini ve ismini belirtiyoruz. |
$mail->addAddress('alici@ornek.com', 'Alıcı Kişi'); | Alıcının e-posta adresini ve ismini belirtiyoruz. |
$mail->Subject = 'Test E-postası'; | E-posta konusunu belirtiyoruz. |
$mail->Body = 'Bu bir test e-postasıdır.'; | E-posta içeriğini belirtiyoruz. |
if (!$mail->send()) { echo 'Mail gönderimi başarısız oldu. '; echo 'Hata: ' . $mail->ErrorInfo; } | E-posta gönderim işlemini gerçekleştiriyoruz, eğer bir hata oluşursa hata mesajını ekrana yazdırıyoruz. |
Yukarıdaki kod bloğunda, değişkenlere belirlediğimiz e-posta adresleri ve içerikler kullanılarak e-posta oluşturulur ve gönderilir. Eğer gönderim sırasında bir hata olursa, hata mesajı ekrana yazdırılır.
Bu sayede, PHPMailer kullanarak e-postalarımızı kolaylıkla gönderebilir, dilediğimiz gibi SMTP ayarlarını yapabiliriz.
Mail Gönderme Fonksiyonu
PHPMailer sınıfı, e-posta gönderme işlemleri için kolayca kullanılabilen bir kütüphanedir. Bu kütüphane ile birlikte, PHP kodlarımızı yazarak SMTP sunucu üzerinden e-postalarımızı gönderebiliriz. Bunun için, PHPMailer sınıfında bulunan mail gönderme fonksiyonunu kullanabiliriz.
Basit bir mail gönderme fonksiyonu yazmak için, öncelikle PHPMailer sınıfını dahil etmemiz gerekmektedir. Daha sonra, bir e-posta göndermek için gerekli olan ayarlamalar yapılarak, mail gönderme fonksiyonu kullanılabilir.
Örnek bir mail gönderme fonksiyonu aşağıdaki gibidir:
// PHPMailer sınıfını çağıralımrequire_once("class.phpmailer.php");function sendMail($to, $subject, $body) { // Yeni bir PHPMailer objesi oluşturalım $mail = new PHPMailer();
// SMTP ayarlarını yapalım $mail->IsSMTP(); $mail->SMTPDebug = 0; $mail->SMTPAuth = true; $mail->SMTPSecure = "tls"; $mail->Host = "smtp.gmail.com"; $mail->Port = 587; $mail->Username = "gmail_adresiniz@gmail.com"; $mail->Password = "gmail_sifreniz";
// Gönderici ve alıcı bilgilerini ayarlayalım $mail->SetFrom('gonderen@ornek.com', 'Gönderen Adı'); $mail->AddAddress($to);
// E-posta konusu ve içeriğini belirleyelim $mail->Subject = $subject; $mail->MsgHTML($body);
// Maili gönderelim ve sonucunu döndürelim if($mail->Send()) { return true; } else { return false; }}
Yukarıdaki örnekte, sendMail() fonksiyonu parametre olarak alınan alıcı, konu ve e-posta içeriği bilgilerini kullanarak bir mail göndermektedir. Fonksiyonda SMTP ayarları önceden yapılır ve mail gönderme işlemi sadece $mail->Send() komutu ile gerçekleştirilir.
Bu fonksiyon, diğer PHP dosyalarından çağrılabilir ve parametreler farklı değerler ile verilerek farklı e-postalar gönderilebilir. Bu sayede, tekrar tekrar PHPMailer sınıfını kullanmak ve ayarlamalar yapmak zorunda kalmayız.
E-posta Şablonları
PHPMailer kullanarak e-posta şablonları göndermek oldukça kolaydır. Şablon dosyalarını oluşturmak için HTML, CSS ve hatta JavaScript kullanabilirsiniz. Bu şablon dosyalarındaki değişkenler yardımıyla PHPMailer tarafından kullanılacak verileri belirleyebilirsiniz.
Bunun için şablon dosyanıza özel bir işaret koymanız ve daha sonra PHPMailer sınıfından aldığınız değişkenlerle bu özel işareti değiştirmeniz yeterlidir. Örneğin, şablonunuzda {ad}
gibi bir imza koyarsanız, PHPMailer sınıfından şablonu kullanırken bu imzayı önceden belirlediğiniz bir isim verisi ile değiştirebilirsiniz.
E-posta şablonları göndermek için iki tür dosyaya ihtiyacınız vardır: biri HTML tabanlı şablon dosyası ve diğeri ise şablonu kullanırken kullanacağınız PHP betiği. Örneğin, bir kayıt onay e-postası göndermek istiyorsanız, HTML tabanlı bir şablon dosyası oluşturabilir ve bu dosyayı kayit_onayi.html
adıyla kaydedebilirsiniz.
PHPMailer sınıfını kullanarak e-posta şablonlarını göndermek için örnek bir kod şu şekilde olabilir:
$mail = new PHPMailer;$mail->isSMTP();// smtp ayarları$mail->Subject = "Kaydınız başarıyla tamamlandı!";$mail->Body = file_get_contents('kayit_onayi.html');$mail->AltBody = 'Lütfen HTML destekli e-posta istemcisi kullanınız.';$mail->send();
Bu kodda, file_get_contents()
fonksiyonu kullanarak kayıt onayı e-postası için hazırladığınız şablon dosyasının içeriğini alır ve $mail->Body
özelliğine ekler. Alt kısım, HTML desteklemeyen istemciler için alternatif bir tekst mesajıdır.
E-posta şablonları göndermek, e-posta pazarlama kampanyaları veya otomatik posta yanıtları gibi birçok senaryoda kullanışlıdır. PHPMailer'ın esnekliği sayesinde, şablon dosyalarınızı istediğiniz şekilde oluşturabilir ve değiştirebilirsiniz.