Hjælp til et array som sender en mail af gangen, istedet for 100 mail på en gang. Jeg har ASPmail. på min server. Sådan ser det ud som jeg bruger nu. Det virker fint.MEN............
Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.RemoteHost = "mail.xxx.dk" Mailer.FromName = "Fra" Mailer.FromAddress = "xxx@xxx.dk" '------------------------------------------------- Set myconn = Server.CreateObject("ADODB.Connection") myConn.open "Driver={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("mail.mdb") SQL = "SELECT email FROM email" Set rs = myconn.Execute(SQL) While Not rs.EOF Mailer.AddRecipient rs("email") rs.Movenext Wend myconn.Close Set myConn = Nothing rs.close
Dette virker også når jeg skal sende nyhedsbrev men alle der får en mail kan se til hven nyhedsbrevet også sendes til (ikke særligt smart). Jeg har kikket på et eksempel fra Activeserverpages. men kan ikke få flg til at virke.
Set myConn = Server.CreateObject("ADODB.Connection") myConn.Open tempConn strSQL = "SELECT Email FROM eMail" Set rs = myConn.Execute(strSQL) arrEmail = rs.GetRows()<-- Samler op i et array til senere udskrift--> myConn.Close Set myConn = Nothing
Set objMailer = Server.CreateObject("ASPMail.ASPMailCtrl.1") For num = 0 to Ubound(arrEmail,2) strResult = objMailer.SendMail(strMailserver, arrEmail(0, num), strSender, strSubject, strMessage) Next Set objMailer = Nothing strMode = "messagessendt"
'// Her sletter vi alt buffered output, og redirecter siden, med et parameter der fortæller at vi har sendt til listen Response.Clear Response.Redirect("mailliste.asp?mode=finish") End If %> får bla. flg fejl. Server.CreateObject Failed eller Object not a collection: 'objMailer.SendMail'
Der er 300 point til den som kommer med en løsning der virker.
SQL = "SELECT email FROM email" Set rs = myconn.Execute(SQL)
While Not rs.EOF
Mailer.ToAddress = rs("email") Mailer.Body = "Kære " & rs("name") & " - DETTE ER EN TEST" Mailer.send
rs.Movenext Wend
myconn.Close Set myConn = Nothing rs.close ***** CODE *****
Nu er jeg ikke 100% sikker på at det er de rigtige felter (ToAddress og send), men princippet er det sådan du skal gøre... Alt det der skifter skal ind i løkken. F.eks. navn i body, email adresse osv....
Hvis du har noget documentation over dit mailobjekt, så har jeg en bedre mulighed for at hjælpe dig
Hej Mike. Dit forslag senden også mail til alle på en gang så andre modtager af mailen bliver vist i "sendes til". Jeg har Aspmail 2 på severen. http://www.serverobjects.com/comp/Aspmail2.htm Det kan være at man skal lave en "BCC" på mailen
Mailer.AddRecipient rs("email") Mailer.Bodytext = "Kære " & rs("name") & " - DETTE ER EN TEST" Mailer.sendmail Mailer.ClearRecipients <--Her virker det som om at Recipients bliver slettet i Rs. Så der ikke er nogen modtager i Rs--> Men jeg prøver lige igen.
Den her kan jeg ikke lide : SQL = \"SELECT email FROM email\" bedre sådan : SQL = \"SELECT * FROM email\" Så er det bedre at tage SQL først, og Jmail nr.2 hvor Mailer.FromAddress = rs(\"email\")
og så afslutter man Jmail Jmail.execute Jmail = nothing Loop
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.