14. juli 2003 - 23:20Der er
4 kommentarer og 1 løsning
jmail - send ikke med det samme
jeg har brug for at sende mail automatisk, men med en forsinkelse på 5 minutter.
Jeg har brugt Jmail i min programmmering, og mailen bliver sendt ud mens jeg loader en side. Dvs jeg kan ikke bare sige, at den skal vente 5 minutter, fordi så må brugerne vente 5 minutter indtil siden loader.
For at undgå fejl bør du lige tjekke, at datoen er eksisterende. Altså:
'Tjek hver gang en ny side loades If Application("mail") <> "" Then If DateDiff("n", Application("mail"), Now) >= 5 Then Application("mail") = "" 'Send mailen End If End If
JMail kan vist ikke sættes til selv at forsinke mailen.
Den eneste mulighed der (måske) er er LazyWrite:
JMail.LazyWrite = true
Hvis det er vigtigt med en forsinkelse, så der derfor kun metoden beskrevet af erikjacobsen og netro. Problemet her er imidlertid at få et script til at køre 5 minutter senere - det kan kun sikres ved at du har direkte adgang til serveren og kan schedulere et job til at køre senere. Det er - efter min mening - ikke nogen holdbar løsning at skulle vente til at nogle andre besøgende til din side aktivere det script som skal sende mailen.
Men, hvorfor er det egentligt vigtigt at mailen først sendes når siden er loadet? Hvorfor placere du ikke bare JMail-koden i slutningen af det script som generere siden? Eller helt i starten af siden.
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.