// Üye Girişi
E Posta:
Şifre:
// 9 Eylül 2010

• Anasayfa
• Fonksiyonlar
• Makaleler
• Forum
• En yeniler
• En popülerler
• En Beğenilenler
• Reklam
• İletişim

 Asp Dünyası // Makaleler // Mailleri bölerek göndermek

Aşağıdaki kodda Kayit_Sayisi değişkeninin değerini değiştirerek bir seferde kaç mail gönderileceğini, en altaki meta refresh kodunda da content değerini değiştirerek kaç saniye aralıklarla maillerin gönderileceğini belirleyebilirsiniz.

<%
´Mailler_Conn isimli bir Connection nesnesi oluşturuyoruz.

set Mailler_Conn = server.createObject("ADODB.connection")

´Maillerin kayıtlı olduğu veritabanımız nerdeki

MailDBPath = Server.MapPath("maillist.mdb")

´Maillerin kayıtlı olduğu veritabanımıza bağlanıyoruz.

Mailler_Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&MailDBPath&";"

´rs isimli recordsetimizi oluşturuyoruz.

set rs = Server.createObject("ADODB.RecordSet")

´Maillerin kayıtlı olduğu tabloyu açıyoruz.

rs.Open "select mail FROM uyeler", Mailler_Conn, 1, 3

´Bir seferde kaç kişiye birden mail gidecek belirliyoruz.

Kayit_Sayisi = 40

´Sayfamızın adı

BuSayfa = Request.ServerVariables("Script_Name")

´Gelen sayfa sayısı

GelenSayfa = Request("Sayfa")

´Sayfalama olayları

rs.PageSize = Kayit_Sayisi
rs.CacheSize = Kayit_Sayisi

If GelenSayfa = "" Then
Gosterilen_kayit = 1
Else
Gosterilen_kayit = CInt(GelenSayfa)
End If

Toplam_Kayit = rs.PageCount

If Gosterilen_kayit > Toplam_Kayit Then Gosterilen_kayit = Toplam_Kayit

If Gosterilen_kayit < 1 Then Gosterilen_kayit = 1

rs.AbsolutePage = Gosterilen_kayit

´------------------------------------------------------
´Mail komponentinize göre mail objemizi oluşturuyoruz.
Set axu = Server.createobject("Persits.MailSender")
´SMTP Serverimiz
axu.Host = "mail.benimsitem.com"
´Kimden geliyor
axu.From = "admin@benimsitem.com"
´İsim
axu.FromName = "Admin"
´Konu
axu.Subject = "Benim siteden size mail var."
´------------------------------------------------------

i = 0
do while i < Kayit_Sayisi and Not rs.Eof

´Ve en önemli olayımız mail adreslerini
´Bcc kısmına ekliyoruz.Böylece bir seferde
´belirlediğiniz sayı kadar kişiye mail gidiyor.
´Siz bunu AddCC kısmına yada AddAddress kısmınada
´ekleyebilirsiniz. Ama ben adres satırında sadece
´bir mail adresi görünmesini istiyorum ki
´bu mail üyenize olan saygınızı gösterir.

axu.AddBcc rs("mail")

i = i + 1
rs.MoveNext
Loop

´Burda mesajı göndermek istediğimiz mesajı yazıyoruz.
´Siz ordaki yazı yerine bir değişkenden de alabilirsiniz.

axu.Body = "Selam sevgi sabah"

´Html mail göndermek istemiyorsanız bunu silebilirsiniz. Yada False yapın.

axu.IsHTML = True

´Hata durumunda devam et ki geride kalanlara da mesaj ulaşsın.

On Error Resume Next

´Bitti gitti

axu.Send

´Biz katil değil webmasteriz ama öldürelim gitsin.

set axu = Nothing

´Mesajlar bittiğinde bitti diyelim olayı sona erdirelim.

if rs.eof or rs.bof Then
Response.Write "Bitti"
Response.End
end if

´Ve en önemli olan kısım oradaki 15 saniye
´cinsinden süre. bu kısım bize döngü sağlıyor.
´15 saniyede bir sayfa kendi kemdini tazeleyecek
´ve sonra ki posta maili gönderecek. Bu sırada
´ekranda toplam kaç posta mail gideceğini ve
´sizin o anda kaçıncı postayı gönderdiğinizi görebilirsiniz.
%>

<meta http-equiv="refresh" content="15; url=
<%=BuSayfa%>
?Sayfa=
<%=Gosterilen_kayit+1%>
"
>

<center><h4>
<%=Gosterilen_kayit%>
/
<%=Toplam_Kayit%>
gitti.


Bu makaleyi 479 kişi okudu.

Aspdunyasi.com© 2006 - 2007
Aspdunyasi.com Dizaynist.com ürünüdür.
Sitemize editör, ziyaretçi ya da üyelerimiz tarafından eklenen hiç bir veriden ayrıca tüm diğer site linklerinden,Aspdunyasi.com sorumlu değildir.