24. februar 2003 - 20:24Der er
10 kommentarer og 1 løsning
Jmail - Hvorfor smides hver 22 mail væk ?
Hey Alle
Jeg er ved at lave en mailliste til mit site, men min udbyder Azero nævner noget om at hver 22 mail smides væk når der sendes mail ud. (se nedestående)
// Taget fra Azero.dk
JMail smider hver 22-ende e-mail væk, hvorfor?
Når du sender e-mails fra hjemmesider via websmtp.dit-domaene.dk og JMail skal du huske at lukke din connection, minimum efter hver tyvende e-mail. Gør du ikke dette vil hver 22-ende e-mail i en løkke, ikke blive sendt. Herunder er et eksempel på en løkke, der laver en JMail.Close for hver 20-ende e-mail:
For i = 1 to intCount If Not JMail.Execute Then Response.Write("ERROR MESSAGE: " & JMail.ErrorMessage & "<br>" & vbCrLf) Response.Write("ERROR SOURCE: " & JMail.ErrorSource & "<br>" & vbCrLf) Response.Write("LOG: <pre>" & JMail.Log & "</pre>" & vbCrLf) End If If CInt(i/20) = i/20 Then JMail.Close Next
Hvorledes kan ovenstående flettes ind i min kode så den tager højde for det.
// maillist.asp
<% SQL = "SELECT * FROM maillist;" Set rs = Conn.Execute(SQL) Do While Not rs.eof
Set Mail = Server.CreateObject("JMail.SMTPMail") Mail.ServerAddress = "websmtp.domæne.dk" Mail.Subject = "Nyhedsbrev" Mail.AddRecipient rs("email") Mail.Sender = "domæne@donæne.dk" Mail.Body = Request.Form("msgbody")
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Jamen det er udenmærket men kan det ikke løses men ovenstående kode da jeg ikke ønsker ekstra udgifter med domænet (SpeedMail/Mailliste koster nemlig penge)
Du indsætter blot: set mail=nothing imellem mail.execute og rs.movenext, altså: <% SQL = "SELECT * FROM maillist;" Set rs = Conn.Execute(SQL) Do While Not rs.eof
Set Mail = Server.CreateObject("JMail.SMTPMail") Mail.ServerAddress = "websmtp.domæne.dk" Mail.Subject = "Nyhedsbrev" Mail.AddRecipient rs("email") Mail.Sender = "domæne@donæne.dk" Mail.Body = Request.Form("msgbody")
Mail.Execute Set mail = nothing rs.movenext Loop %> - på denne måde lukker du jmail efter hver mail og dermed undgår du problemet, jeg bruger det selv og det virker udemærket.
Men når man nu lukker forbindelsen hver gang må det da tage lang tid at sende mange mail. Skal man så tage højde for noget timeout i sin kode eller hva ??
At det skulle tage længere tid er ikke noget du kan mærke, det tager i forvejen lang tid afhængigt af hvor mange mails der skal sendes, så jeg vil da råde dig til at sætte en script timeout på 6000 eller sådan noget lign. Om det ville være en fordel at sende som BCC skal jeg ikke kunne sige, det er bare ikke særlig smart hvis du f.eks. har et link til automatisk afmelding af nyhedsbrevet, så vil alle jo modtage det samme link hvis du forstå hvad jeg mener :o)
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.