C 1
chengdu
xranzei 1
xranzei
zendor2 1
zendor2
Bvural41 1
Bvural41
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Almira2 1
Almira2
romegames 1
romegames
D 1
delimuratt
melankolıa18 1
melankolıa18
shrpnl 1
shrpnl
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

PHP ile SMTP’den mail gönderme

DumanInc

Web Development
Telefon Numarası Onaylanmış Üye
Fahri Üye
TM Üye
Katılım
19 Nis 2009
Konular
423
Mesajlar
1,880
Çözüm
14
Online süresi
3mo 2h
Reaksiyon Skoru
968
Altın Konu
38
TM Yaşı
17 Yıl 1 Ay 22 Gün
Başarım Puanı
267
MmoLira
3,804
DevLira
9
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

PHP SMTP Sınıfı: PHPMailer

Bu olay için sıfırdan nasıl kodlanacağını değil, var olan çok özellikli açık kaynak SMTP sınıfını nasıl kullanacağımızı göstereceğim. Bu güzel sınıfa adresten ulaşıp güncel sürümünü indirebilirsiniz.

Kullanımı inanın gayet basit ve mail olaylarıyla alakalı istediğiniz her şeyi yapmak mümkün (dosya göndermek, birden fazla alıcı eklemek, yanıt adresini değiştirmek vs.)

Mail Göndermek

PHPMailer sınıfı ile SMTP mail göndermek için “class.phpmailer.php” ve “class.smtp.php” dosyalarını alıp aşağıdaki kod bloğunu kullanmanız yeterli. İlgili yerlere kendi sunucunuzun host, port ve kullanıcı adı şifre bilgilerinizi girin.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
include 'class.phpmailer.php';
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = 'smtp.sitem.com';
$mail->Port = 587;
$mail->Username = 'benim@adresim.com';
$mail->Password = 'çokgizlişifre';
$mail->SetFrom($mail->Username, 'Benim Adım');
$mail->AddAddress('alici@adresi.com', 'Alıcının Adı');
$mail->CharSet = 'UTF-8';
$mail->Subject = 'Mail Başlığı';
$mail->MsgHTML('Mailin içeriği!');
if($mail->Send()) {
echo 'Mail gönderildi!';
} else {
echo 'Mail gönderilirken bir hata oluştu: ' . $mail->ErrorInfo;
}
Olay bu kadar düzenli ve basit. Eğer yukarıda da bahsettiğim gibi kendi sunucunuzu kullanmak yerine varolan Gmail hesabınız ile bu olayı kullanmak istiyorsanız yukarıdaki host ve port bölümü aşağıdaki gibi değiştirin:

1
2
3
$mail->Host = 'smtp.gmail.com';
$mail->Port = 587;
$mail->SMTPSecure = 'tls';

Mail ile dosya göndermek

Göndereceğiniz mailin içerisine dosya eklemek için AddAttachment metodunu kullanacağız. Örneğin bir resim göndermek için:​

1$mail->AddAttachment('img/gonderilecek_resim.jpg');
Bu kadar basit.

Birden fazla kişiye gönderme

Birden fazla alıcı eklemek için ekstra bir şeye ihtiyaç yok. Yukarıda alıcı adresi tanımladığımız AddAddress metodunu tekrar kullanabiliriz. Ama eğer CC ya da BCC eklemek istiyorsanız onun için de AddCC ya da AddBCC metodlarını kullanmanız yeterli.​

1
2
3
$mail->AddAddress('baska@biri.com', 'Başkası');
$mail->AddCC('baska@iki.com', 'Diğeri');
$mail->AddBCC('baska@ucu.com', 'Öteki');
Yeri gelmişken CC ile BCC arasından da bahsetmek gerekirse; CC: “Carbon Copy” yani bir kopyasını da bu şekilde eklenmiş adreslere gönderir. BCC: “Blend Carbon Copy” CC ile aynı tek farkı buraya yazılan adresler diğer gönderilen kişilerde gözükmez.

Yanıt adresini değiştirme

Eğer gönderdiğiniz adrese değilde başka bir adrese cevap yazılmasını istiyorsanız AddReplyTo metodu ile cevap atılmasını istediğiniz mail adresini yazmanız yeterli.

1$mail->AddReplyTo('cevaplar@buraya.com', 'Cevapçı');
Bu sınıf hakkında daha fazla bilgi ve örnek çalışma için bakabilirsiniz.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst