|
| Hvor går det galt med denne løkke? Jmail..~ Fra : Belial |
Dato : 22-10-03 00:13 |
|
Jeg har prøvet at lave et nyhedsbrev, men desværre er mailen blevet sendt
til hver tilmeldte det antal gange, som der er tilmeldte, således at hver
tilmeldt har fået 10 af den samme mail. Det holder jo ikke. Hvor er det det
går galt for mig?
SQL1= "SELECT email FROM nyhedsbrev "
Set objRS = Connect.Execute(SQL1)
do until objRS.EOF
Set JMail = Server.CreateObject("JMail.SMTPMail")
JMail.ServerAddress = "mail.xxx.dk"
JMail.Sender = "mail@xxx.dk"
JMail.Subject = Request.Form("header")
JMail.AddRecipient objRS("email")
JMail.Priority = 3
JMail.AddHeader "Originating-IP",
Request.ServerVariables("REMOTE_ADDR")
strIndhold = Request.Form("EditorValue")
JMail.HTMLBody = "<font face=Arial size=2>" & strIndhold &
"</font>"
JMail.Execute
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
objRS.MoveNext
loop
Response.Write "<br><div align=center>Nyhedsbrevet er nu
afsendt!</div>"
Set JMail = Nothing
| |
Carsten Pedersen (22-10-2003)
| Kommentar Fra : Carsten Pedersen |
Dato : 22-10-03 06:52 |
|
Hej
For mig at se kalder du Execute to gange for hver post i dit recordset. Det
ene af disse kald ligger endda inde i en For-løkke, så Execute udføres 1 +
intCount gange for hver post i recordsettet.
Du kunne ændre koden til noget i stil med
Ok = JMail.Execute
For i = 1 To intCount
If Not Ok Then
...
End If
Next
Så kalder du kun Execute én gang for hver post, men kan stadug udføre din
kontrol.
C@rsten
"Belial" <666_NOSPAM@esenet.dk> skrev i en meddelelse
news:3f95bd7c$0$29413$edfadb0f@dread15.news.tele.dk...
> Jeg har prøvet at lave et nyhedsbrev, men desværre er mailen blevet sendt
> til hver tilmeldte det antal gange, som der er tilmeldte, således at hver
> tilmeldt har fået 10 af den samme mail. Det holder jo ikke. Hvor er det
det
> går galt for mig?
>
> SQL1= "SELECT email FROM nyhedsbrev "
> Set objRS = Connect.Execute(SQL1)
> do until objRS.EOF
>
> Set JMail = Server.CreateObject("JMail.SMTPMail")
> JMail.ServerAddress = "mail.xxx.dk"
> JMail.Sender = "mail@xxx.dk"
>
> JMail.Subject = Request.Form("header")
> JMail.AddRecipient objRS("email")
> JMail.Priority = 3
> JMail.AddHeader "Originating-IP",
> Request.ServerVariables("REMOTE_ADDR")
>
> strIndhold = Request.Form("EditorValue")
>
> JMail.HTMLBody = "<font face=Arial size=2>" & strIndhold &
> "</font>"
>
> JMail.Execute
>
> 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
>
> objRS.MoveNext
> loop
> Response.Write "<br><div align=center>Nyhedsbrevet er nu
> afsendt!</div>"
>
> Set JMail = Nothing
>
>
| |
Ryan Kristensen (22-10-2003)
| Kommentar Fra : Ryan Kristensen |
Dato : 22-10-03 11:13 |
|
> Jeg har prøvet at lave et nyhedsbrev, men desværre er mailen blevet sendt
> til hver tilmeldte det antal gange, som der er tilmeldte, således at hver
> tilmeldt har fået 10 af den samme mail. Det holder jo ikke. Hvor er det
> det
> går galt for mig?
[snip]
> JMail.AddRecipient objRS("email")
Når du bruger AddRecipient så tilføjer du en ny modtager. Dvs.
JMail.AddRecipient navn1@domæne.dk
JMail.Execute
JMail.AddRecipient navn2@domæne.dk
JMail.Execute
Så sender du en mail til navn1 samt en til både navn1 og navn2.
JMail.AddRecipient navn1@domæne.dk
JMail.Execute
JMail.ClearRecipients
JMail.AddRecipient navn2@domæne.dk
JMail.Execute
Sådan her sender du én mail til navn1 og én mail til navn2.
--
Ryan Kristensen
| |
Belial (22-10-2003)
| Kommentar Fra : Belial |
Dato : 22-10-03 11:52 |
|
> Sådan her sender du én mail til navn1 og én mail til navn2.
Jeg prøvede at proppe JMail.ClearRecipients ind efter JMail.AddRecipient
objRS("email") men så fik jeg beskeden
jmail.SMTPMail error '8000ffff'
No recipients
Det viser sig også at mit problem er lidt anderledes, end jeg først troede.
Det viser sig, at den der stod først på listen (mig) fik en mail det antal
gange, som der er tilmeldte. ingen af de andre på listen har fået noget.
Hvad kan problemet mon så være?
| |
|
|