Yenilikleri, isteklerinizin aşamalarını görebilirsiniz.
Öneriniz gerçekten çok güzel. Üzerinde çalışmalara başlayacağız.
Arkadaşlar tabi ki konularınızı; başlık, açıklama ve düzenli bir kod dökümanı halinde ilettiğiniz takdirde paylaşırız. Bunun için info@phpmutfagi.com mail adresine yazmanız yeterlidir. Sadece tek şartımız herkesin anlayacağı bir dilde anlatmanız (Konularınızı iletirken lütfen imzanızı da gönderin. İsim soyisim, varsa linkedin veya başka bir sosyal medya hesabınız).
31-12-2022
Php derslerinde, php hazır kodlarda, php hatalarda ve ya tüm konularda hızlıca arama yaparak aradığınıza hızlıca ulaşabilirsiniz.
Yayın Tarihi
Php ile mail gönderimi oldukça basittir ve bunun için en güvenilir yöntem Phpmailer sınıfını kullanarak göndermektir. Oldukça basit ve kullanışlı bir yapıya sahiptir.
Lütfen gözünüz korkmasın, ne kadar kolay olduğunu daha yakından inceleyince anlayacaksınız ve çok fazla kod bilginizin olmasına gerek yok. Oldukça basit bir yapıya sahiptir.
Phpmailer sınıfında yapabileceklerinizin bazıları;
Lütfen açıklama kısımlarına dikkat ediniz. Kodların tüm açıklamaları mevcut.
<?php
// ## PHP Mutfağı > https://www.phpmutfagi.com/ ## //
include 'class.phpmailer.php'; //Php Phpmailer Class'ı
include 'class.smtp.php'; //SMTP Mail Göndermek İçin Gerekli.
$mail = new PHPMailer(false); // PHPMailer Sınıfı Başlatılıyor.
$mail->IsSMTP(); //SMPT kullanarak mail gönder
// !!!!! Eğer smtp ile ilgili hata alırsanız aşağıdaki değeri "false" yaparak deneyebilirsiniz.
$mail->SMTPAuth = true; //SMPT kimlik doğrulanmasını etkinleştir ve ya kapat
/*
$mail->SMTPDebug
# 0 Hataları Gizle
# 1 Normal Hatalar
# 2 Tüm Hatalar ve İşlem Süreci
*/
$mail->SMTPDebug = 1; //İşlem sürecinde oluşan hataları ve işlem sürecini gösterir
$mail->Host = 'mail.domainadresiniz.com'; //SMPT mail sunucusu alanı, kendi mail sunucunuz ve ya google, yandex vb. sunucuları hangisini kullanıyorsanız.
$mail->Port = 587;
$mail->Username = 'GonderenMail@domainadresi.com'; //Gönderici mail adresi
$mail->Password = 'mail_sifresi'; //Gönderici mail adresi şifresi
$mail->SetFrom('GonderenMail@domainadresi.com', 'Title, İsim Alanı'); //Gönderici mail adresi
// # $mail->addReplyTo('YanitinGelecegiMailAdresi@domainadresi.com', 'Title, İsim Alanı'); Mail yanıtlandığında buradaki mail adresine mail gönderilmesi gerektiği belirtilir
$mail->AddAddress('AliciMail@domainadresi.com', 'Title, İsim Alanı'); //Alıcı mail adresi
// # $mail->addCC('AliciMail1@domainadresi.com', ' Title, İsim Alanı'); //Gönderilecek mail bu adrese de gidecek. Aynı zamanda bu adrese gittiği de mail mesajında belirtilecek.
// # $mail->addBCC('AliciMail2@gmail.com', 'Title, İsim Alanı'); //Gönderilecek mail bu adrese de gidecek. Ancak bu adrese gittiği mail mesajında belirmeyecek.
$mail->CharSet = 'UTF-8'; //Mailin tüm içeriğini UTF-8 karşılaştırması olarak ayarla
$mail->Subject = 'Mail Başlığı'; //Mailinizin başlığı
$mail->MsgHTML('<h3>HTML İçerik</h3>'); //Mailinizin içeriği - HTML kodları destekler.
if ($mail->Send()) //Mail gönderildi mi
echo 'Mail gönderildi!';
else
echo 'Mail gönderilirken bir hata oluştu: ' . $mail->ErrorInfo;//Eğer mail gönderilmediyse hatayı ekrana yaz.
?>
$mail->AddAddress
alanını döngüye almanız yeterlidir. Eklediğiniz kadar gönderim sağlar. Bazı sunucular 20 den fazla kişiye gönderimi engellemektedir. Lütfen böyle durumda sunucu sağlayıcınız ile iletişime geçiniz.
Lütfen açıklama kısımlarına dikkat ediniz. Kodların tüm açıklamaları mevcut.
<?php
// ## PHP Mutfağı > https://www.phpmutfagi.com/ ## //
include 'class.phpmailer.php'; //Php Phpmailer Class'ı
include 'class.smtp.php'; //SMTP Mail Göndermek İçin Gerekli.
$mail = new PHPMailer(false); // PHPMailer Sınıfı Başlatılıyor.
$mail->IsSMTP(); //SMPT kullanarak mail gönder
// !!!!! Eğer smtp ile ilgili hata alırsanız aşağıdaki değeri "false" yaparak deneyebilirsiniz.
$mail->SMTPAuth = true; //SMPT kimlik doğrulanmasını etkinleştir ve ya kapat
/*
$mail->SMTPDebug
# 0 Hataları Gizle
# 1 Normal Hatalar
# 2 Tüm Hatalar ve İşlem Süreci
*/
$mail->SMTPDebug = 1; //İşlem sürecinde oluşan hataları ve işlem sürecini gösterir
$mail->Host = 'mail.domainadresiniz.com'; //SMPT mail sunucusu alanı, kendi mail sunucunuz ve ya google, yandex vb. sunucuları hangisini kullanıyorsanız.
$mail->Port = 587;
$mail->Username = 'GonderenMail@domainadresi.com'; //Gönderici mail adresi
$mail->Password = 'mail_sifresi'; //Gönderici mail adresi şifresi
$mail->SetFrom('GonderenMail@domainadresi.com', 'Title, İsim Alanı'); //Gönderici mail adresi
$mail->AddAddress('AliciMail1@domainadresi.com', 'Title, İsim Alanı'); //Alıcı mail adresi
$mail->AddAddress('AliciMail2@domainadresi.com', 'Title, İsim Alanı'); //Alıcı mail adresi
$mail->AddAddress('AliciMail3@domainadresi.com', 'Title, İsim Alanı'); //Alıcı mail adresi
// $mail->AddAddress KODUNU NE KADAR EKLERSENİZ O KADAR KİŞİYE GÖNDERİM YAPAR.
// # $mail->addCC('AliciMail1@domainadresi.com', ' Title, İsim Alanı'); //Gönderilecek mail bu adrese de gidecek. Aynı zamanda bu adrese gittiği de mail mesajında belirtilecek.
// # $mail->addBCC('AliciMail2@gmail.com', 'Title, İsim Alanı'); //Gönderilecek mail bu adrese de gidecek. Ancak bu adrese gittiği mail mesajında belirmeyecek.
$mail->CharSet = 'UTF-8'; //Mailin tüm içeriğini UTF-8 karşılaştırması olarak ayarla
$mail->Subject = 'Mail Başlığı'; //Mailinizin başlığı
$mail->MsgHTML('<h3>HTML İçerik</h3>'); //Mailinizin içeriği - HTML kodları destekler.
if ($mail->Send()) //Mail gönderildi mi
echo 'Mail gönderildi!';
else
echo 'Mail gönderilirken bir hata oluştu: ' . $mail->ErrorInfo;//Eğer mail gönderilmediyse hatayı ekrana yaz.
?>
Php mail içeriğine dosya, resim ve belge eklemek için $mail->AddAttachment
kodunu eklemeniz yeterli olacaktır.
Lütfen açıklama kısımlarına dikkat ediniz. Kodların tüm açıklamaları mevcut.
<?php
// ## PHP Mutfağı > https://www.phpmutfagi.com/ ## //
include 'class.phpmailer.php'; //Php Phpmailer Class'ı
include 'class.smtp.php'; //SMTP Mail Göndermek İçin Gerekli.
$mail = new PHPMailer(false); // PHPMailer Sınıfı Başlatılıyor.
$mail->IsSMTP(); //SMPT kullanarak mail gönder
// !!!!! Eğer smtp ile ilgili hata alırsanız aşağıdaki değeri "false" yaparak deneyebilirsiniz.
$mail->SMTPAuth = true; //SMPT kimlik doğrulanmasını etkinleştir ve ya kapat
/*
$mail->SMTPDebug
# 0 Hataları Gizle
# 1 Normal Hatalar
# 2 Tüm Hatalar ve İşlem Süreci
*/
$mail->SMTPDebug = 1; //İşlem sürecinde oluşan hataları ve işlem sürecini gösterir
$mail->Host = 'mail.domainadresiniz.com'; //SMPT mail sunucusu alanı, kendi mail sunucunuz ve ya google, yandex vb. sunucuları hangisini kullanıyorsanız.
$mail->Port = 587;
$mail->Username = 'GonderenMail@domainadresi.com'; //Gönderici mail adresi
$mail->Password = 'mail_sifresi'; //Gönderici mail adresi şifresi
$mail->SetFrom('GonderenMail@domainadresi.com', 'Title, İsim Alanı'); //Gönderici mail adresi
$mail->AddAddress('AliciMail1@domainadresi.com', 'Title, İsim Alanı'); //Alıcı mail adresi
// # $mail->addCC('AliciMail1@domainadresi.com', ' Title, İsim Alanı'); //Gönderilecek mail bu adrese de gidecek. Aynı zamanda bu adrese gittiği de mail mesajında belirtilecek.
// # $mail->addBCC('AliciMail2@gmail.com', 'Title, İsim Alanı'); //Gönderilecek mail bu adrese de gidecek. Ancak bu adrese gittiği mail mesajında belirmeyecek.
$mail->AddAttachment('gonderilecek_resim.jpg');
$mail->AddAttachment('gonderilecek_dosya.zip');
$mail->AddAttachment('gonderilecek_dosya.pdf');
$mail->CharSet = 'UTF-8'; //Mailin tüm içeriğini UTF-8 karşılaştırması olarak ayarla
$mail->Subject = 'Mail Başlığı'; //Mailinizin başlığı
$mail->MsgHTML('<h3>HTML İçerik</h3>'); //Mailinizin içeriği - HTML kodları destekler.
if ($mail->Send()) //Mail gönderildi mi
echo 'Mail gönderildi!';
else
echo 'Mail gönderilirken bir hata oluştu: ' . $mail->ErrorInfo;//Eğer mail gönderilmediyse hatayı ekrana yaz.
?>
Php de gönderdiğiniz maili kullanıcıların yanıtlaması gerekebilir. Yanıtlandığı takdirde hangi mail adresine yanıtın gönderileceğini çok rahatlıkla ayarlayabiliyoruz. Bunun için $mail->addReplyTo
kodunu eklemeniz yeterli olacaktır.
Bizce bu harika bir özellik ve çoğu yerde bulamazsınız, amacımız öğretmek ve ne kadar kolay olduğunu göstermek. :)
Lütfen açıklama kısımlarına dikkat ediniz. Kodların tüm açıklamaları mevcut.
<?php
// ## PHP Mutfağı > https://www.phpmutfagi.com/ ## //
include 'class.phpmailer.php'; //Php Phpmailer Class'ı
include 'class.smtp.php'; //SMTP Mail Göndermek İçin Gerekli.
$mail = new PHPMailer(false); // PHPMailer Sınıfı Başlatılıyor.
$mail->IsSMTP(); //SMPT kullanarak mail gönder
// !!!!! Eğer smtp ile ilgili hata alırsanız aşağıdaki değeri "false" yaparak deneyebilirsiniz.
$mail->SMTPAuth = true; //SMPT kimlik doğrulanmasını etkinleştir ve ya kapat
/*
$mail->SMTPDebug
# 0 Hataları Gizle
# 1 Normal Hatalar
# 2 Tüm Hatalar ve İşlem Süreci
*/
$mail->SMTPDebug = 1; //İşlem sürecinde oluşan hataları ve işlem sürecini gösterir
$mail->Host = 'mail.domainadresiniz.com'; //SMPT mail sunucusu alanı, kendi mail sunucunuz ve ya google, yandex vb. sunucuları hangisini kullanıyorsanız.
$mail->Port = 587;
$mail->Username = 'GonderenMail@domainadresi.com'; //Gönderici mail adresi
$mail->Password = 'mail_sifresi'; //Gönderici mail adresi şifresi
$mail->SetFrom('GonderenMail@domainadresi.com', 'Title, İsim Alanı'); //Gönderici mail adresi
$mail->AddAddress('AliciMail1@domainadresi.com', 'Title, İsim Alanı'); //Alıcı mail adresi
$mail->addReplyTo('YanitinGelecegiMailAdresi@domainadresi.com', 'Title, İsim Alanı'); // Mail yanıtlandığında buradaki mail adresine mail gönderilmesi gerektiği belirtilir
// # $mail->addCC('AliciMail1@domainadresi.com', ' Title, İsim Alanı'); //Gönderilecek mail bu adrese de gidecek. Aynı zamanda bu adrese gittiği de mail mesajında belirtilecek.
// # $mail->addBCC('AliciMail2@gmail.com', 'Title, İsim Alanı'); //Gönderilecek mail bu adrese de gidecek. Ancak bu adrese gittiği mail mesajında belirmeyecek.
$mail->CharSet = 'UTF-8'; //Mailin tüm içeriğini UTF-8 karşılaştırması olarak ayarla
$mail->Subject = 'Mail Başlığı'; //Mailinizin başlığı
$mail->MsgHTML('<h3>HTML İçerik</h3>'); //Mailinizin içeriği - HTML kodları destekler.
if ($mail->Send()) //Mail gönderildi mi
echo 'Mail gönderildi!';
else
echo 'Mail gönderilirken bir hata oluştu: ' . $mail->ErrorInfo;//Eğer mail gönderilmediyse hatayı ekrana yaz.
?>