Avatar billede totalpc Seniormester
02. april 2008 - 11:39 Der er 3 kommentarer og
1 løsning

gemme data fra et loop

Jeg har følgende email-script.

<!--#include file="db.inc"-->
<%
aktiv = "ja"

ID = Request.QueryString("id")

if session("brugernavn")="" then
    nubruger=Request.Cookies("LoginInfo")("Brugernavn")
else
    nubruger=session("brugernavn")
End If


strSQL = "SELECT email, brugernavn as tilbrugernavn FROM bruger WHERE send_email=true AND brugernavn<>'"& nubruger & "'"

set rs = Conn.Execute(strSQL)

strSQL1 = "SELECT forfatter, overskrift FROM blog WHERE id="& id
set rs1 = Conn.Execute(strSQL1)

'num variablen skal tælle hvor mange brugere vi sender til
num = 0

while not rs.eof
if rs("email") <> "" then
        Set JMail = Server.CreateObject("JMail.SMTPMail")
        JMail.ServerAddress = "localhost"
        JMail.ContentType = "text/html"
        JMail.Charset = "iso-8859-1"
        JMail.ContentTransferEncoding = "8bit"
        JMail.Sender = "robot@xxx.dk"
        JMail.Subject = "Der er oprettet en nyhed på xxx.dk"
        JMail.AddRecipient rs("email")        JMail.HTMLBody = "Hej "& rs("tilbrugernavn") & "<br><br>Der er oprettet en nyhed af <b><i>"& rs1("forfatter") & "</i></b> med overskriften <b><i>"& rs1("overskrift") & "</i></b><br>Log på <a href=""http://xxx/default.asp?sitepage=blogview_indlag&id="&id&""">http://www.xxx.dk</a> og læs nyheden.<br><br>Mvh Kristian"
        JMail.Priority = 3
        JMail.Silent = True
        JMail.Logging = True
          If aktiv="ja" then
        JMail.Execute
          End if

Response.Write "<pre>" & JMail.Log & "</pre>"
response.write rs("email")
response.write JMail.ServerAddress
response.write jmail.htmlbody
response.write ("<br>")
response.write ("----------------------------------------------------")
response.write ("<br>")
   
    set JMail = nothing
else
End If
    rs.MoveNext
    num = num + 1 ' tilføjer 1 til varariablen for hvert gennemløb
Wend
Response.write "<span class='text' align='center'>Nyhedsmailen blev sendt til <b>" & num & " </b> brugere<br>"


'Reset server objects
Conn.Close
Set Conn = Nothing
Set rs  = Nothing
Set rs1  = Nothing

Response.Redirect "default.asp?sitepage=blogview_indlag&id=" & id

%>

Kan jeg få gemt nedenståender data i en tabel i min database eller skrevet dem som en fil i stedet for en response.write, hver gang scriptet køres? Så jeg har en log over de mails der er sendt?


Response.Write "<pre>" & JMail.Log & "</pre>"
response.write rs("email")
response.write JMail.ServerAddress
response.write jmail.htmlbody
response.write ("<br>")
response.write ("----------------------------------------------------")
response.write ("<br>")

Response.write "<span class='text' align='center'>Nyhedsmailen blev sendt til <b>" & num & " </b> brugere<br>"
Avatar billede w13 Novice
02. april 2008 - 11:53 #1
Ret:

Response.Write "<pre>" & JMail.Log & "</pre>"
response.write rs("email")
response.write JMail.ServerAddress
response.write jmail.htmlbody
response.write ("<br>")
response.write ("----------------------------------------------------")
response.write ("<br>")

til:

sWrite=sWrite&"<pre>" & JMail.Log & "</pre>"
sWrite=sWrite&rs("email")
sWrite=sWrite&JMail.ServerAddress
sWrite=sWrite&jmail.htmlbody
sWrite=sWrite&"<br>"
sWrite=sWrite&"----------------------------------------------------"
sWrite=sWrite&"<br>"

Response.Write sWrite
Conn.Execute("INSERT INTO [log] ([log]) VALUES ('"&Replace(sWrite,"'","''")&"')")

Her vil det blive indsat i feltet "log" i tabellen "log".
Avatar billede totalpc Seniormester
02. april 2008 - 12:30 #2
Cool takker...
Og hvis jeg lige ville smide et felt på der hedder logtype med data send_email ?
Avatar billede w13 Novice
02. april 2008 - 13:24 #3
Så ret:

Conn.Execute("INSERT INTO [log] ([log]) VALUES ('"&Replace(sWrite,"'","''")&"')")

til:

Conn.Execute("INSERT INTO [log] ([log],logtype) VALUES ('"&Replace(sWrite,"'","''")&"','send_email')")
Avatar billede totalpc Seniormester
02. april 2008 - 13:35 #4
jeg siger mange tak!
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester