Hotmail, Yahoo, Mynet Inbox’ına email düşürmek
by atayalgec on Nis.22, 2009, under PHP
Mail servislerinin inboxlarına email düşürmek son zamanlarda çok önemli bir hal almaya başladı. Zira, servisler kendilerini spam konusunda ilerlettikçe, kendi aralarında yerel bir ağa dönüştürdüler email iletişimini. Belli başlı en çok kullanılan servislerin uzantısına veya alt yapısına sahip hesaplar dışındakiler çoğunlukla spam email gönderme potansiyeli olan hesap olarak algılanıyor ve spam, önemsiz gibi klasörlerde gönderdikleri mesajlar yer buluyor.
Hal böyle olunca, sitelerden email göndermek çok zorlanıyor. Bu durumu çözebilmek için PTR kayıtı gibi önçalışmalar yapılabiliyor fakat kesin sonuç vermiyor.
Bu iş için en kalıcı ve kesin çözüm şu anda SMTP kullanmak gibi gözüküyor. Fakat kendi serverınızın smtplerini kullanırsanız, muhtemelen popüler servis sağlayıcılarından biri olmadığınız için yinede filtreye takılma şansınız yüksek.
O halde, popüler ve smtp kullanımına izin veren bir servis bulmalıyız. Gmail!
Gmail smtp bağlantısı için hazırlanmış ücretsiz bir classı (PHPMailer) buradan indirebilirsiniz.
PHPMailer Class ile örnek bir email gönderelim:
-
require_once('class.phpgmailer.php');
-
-
$mail = new PHPGMailer();
-
$mail->SetLanguage("tr","language/");
-
$maill->CharSet="iso-8859-9";
-
-
$mail->Username = 'kullaniciadi@gmail.com';
-
$mail->Password = 'gmailsifreniz';
-
-
$mail->From = 'kullaniciadi@gmail.com';
-
$mail->FromName = 'Kullanici Adi';
-
$mail->Subject = 'Email Basligi';
-
$mail->AddAddress("gonderilecek@emailadresi.com");
-
$mail->Body = "Gönderilecek mesaj.";
-
$mail->Send();
En önemli nokta, Gmail günlük yalnızca 1000 tane email gönderebilmenize izin verir. Fakat buda birden çok hesap kullanılarak aşılabilir tabiki.
-
require_once('class.phpgmailer.php');
-
-
// 4 hesap kullanalım, yani maksimum 4000 mail gönderebileceğimiz bir altyapı.
-
$hesap[0]='kullaniciadi0@gmail.com';
-
$sifre[0]='gmailsifresi0';
-
$hesap[1]='kullaniciadi1@gmail.com';
-
$sifre[1]='gmailsifresi1';
-
$hesap[2]='kullaniciadi2@gmail.com';
-
$sifre[2]='gmailsifresi2';
-
$hesap[3]='kullaniciadi3@gmail.com';
-
$sifre[3]='gmailsifresi3';
-
-
// Veritabanından gelen toplam email sayısı
-
$toplamemail=3587;
-
-
for ($i=0;$i<$toplamemail;$i++) {
-
-
$mail = new PHPGMailer();
-
$mail->SetLanguage("tr","language/");
-
$mail->CharSet="iso-8859-9";
-
-
$mail->Username = $hesap[$tbol];
-
$mail->Password = $sifre[$tbol];
-
-
$mail->From = $hesap[$tbol];
-
$mail->FromName = $hesap[$tbol];
-
// Gönderilecek mesajın bilgileride for döngüsünde alınarak, aşağıda ki kısım otomatik doldurulur.
-
$mail->Subject = "Email Basligi";
-
$mail->AddAddress("gonderilecek@emailadresi.com");
-
$mail->Body = "Gönderilecek mesaj.";
-
$mail->Send();
-
}
Mayıs 6th, 2009 on 12:57
Hi, interesting post. I have been pondering this topic,so thanks for posting. I’ll definitely be coming back to your posts. Keep up the good posts
Haziran 7th, 2009 on 16:26
Öncelikle; emeÄŸinize, yüreÄŸinizi, bileÄŸinize saÄŸlık üstad. Fakat .zip’in içinde eksik bir dosya var class.smtp.php isminde. Düzenlerseniz, bundan sonra indirecek kiÅŸiler hatasız kullanabilirler.
Devamını hep bekliyoruz. Emeğe saygı!
Sevgiler, saygılar
Haziran 7th, 2009 on 17:17
Üstad yine rahatsız ediyorum fakat, 24. satırda hata mevcut. parantez kapatmayı unutmuşsunuz.
Haziran 13th, 2009 on 19:12
@Mert: Teşekkür ederim, eksikleri ve koddaki unuttuğum yeri düzelttim.
AÄŸustos 27th, 2009 on 16:43
böyle bir hata alıyorum. İlk örneği kullandım localde deniyorum ondan olabilirmi.
Fatal error: Class ‘SMTP’ not found in C:\wamp\www\gmailsmtp\class.phpgmailer.php on line 535
Eylül 2nd, 2009 on 17:08
uzun zamandır aradığım bir konuydu. çok teşekkür ederim yalnız küçük bir ayrıntı kafama takıldı.
siz 4 hesap eklemişsiniz daha da arttırılabilir ama bu hesapları rastgele mi yoksa sırayla mı kullanıyor. yani, bir hata mesajı filan göremedim, diğer hesaba nasıl geçiyor? 1000 mailde mi diğer hesaba atlıyor, yoksa gmailden red cevabı gelince mi diğer hesaba atlıyor? teşekkürler
Eylül 3rd, 2009 on 01:50
bu class.phpgmailer.php dosyası ne yapacaz ben anlamadım? :( phpmailerin içindeki class.phpmailer.php dosyasının içindekileri bununla mı değiştirecez? açıklarsanız çok sevinirim.
Ekim 14th, 2009 on 22:33
nasıl kurulduğu hakkında bilgi verebilirmisiniz? detayli şekilde.