Avatar billede lund_dk Praktikant
26. november 2004 - 17:11 Der er 3 kommentarer og
1 løsning

Nyhedsmail ud fra denne kode

Hey!

jeg har nedenstående kode som jeg har fundet her i en tråd på eksperten. Har rodet med den, men har ikke kunnde få det til at virke. Skal bruge den i et nyhedsystem.

Har en database som lyder følgende:
TABEL: nyhedsbrev
ID  EMAIL
1  demo@demo.dk
2  demo1@demo.dk
3  demo2@demo.dk

Hvordan omkriver jeg koden, så den sender ud til de mail der er i min database


<%
if request.servervariables("REQUEST_METHOD") = "POST" Then

Email = request.form("email")
ENavn = " VisualCoder "
subject = "test af jmail på itrade.dk"
BodyTextto = " VisualCoder "
FromNavn = " VisualCoder "
FromMail = "admin@inetpost.dk"
SMTPNavn = "pasmtp.tele.dk"
grundnr ="0000"
mailnr=1
mailmax = 1000
loopmax = mailmax
Session.Timeout = 40
Server.ScriptTimeout =1800

for loopcounter = 1 to loopmax       

    response.write("<br><br>jmail objekt dannes " & now & "<br><br>")
    '-------------- start------------------------
    ' dimarc 4.3 JMAIL
    Set JMail = Server.CreateOBject( "JMail.Message" )
    JMail.Logging = false
    JMail.silent = falsea
    JMail.From = FromMail
    JMail.FromName = FromNavn
    JMail.Priority      = 3
    JMail.AddHeader    "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
   
    ' ---------------------Loop del ----------------------

        'do while mailnr <= Int(mailmax)
            taeller = " " & left(grundnr,4-len(cstr(mailnr))) & cstr(mailnr)
            mailnr= mailnr+1
            JMail.Subject      = subject & taeller
            JMail.AddRecipient Email, Enavn
            JMail.Body="Velkommen " & Enavn & " " & BodyTextto & taeller
            if not JMail.Send(SMTPNavn) then
                Response.write "<pre>" & JMail.log & "</pre>"
            else
                Response.write "Mail OK" & "-->"
                Response.write Email  & "<b>"  & "-->"
                Response.write subject  & taeller & "-->"
                Response.write BodyTextto & "</b>"
            end if
            If (mailnr MOD 20) = 0 then
                JMail.Close()
                Response.write ("<br>Con Lukket : " & now  & "<br>" )
                Response.flush
                If Response.isclientconnected()=false THEN
                    Response.Write "Vi tabte forbindelsen .... "
                    'EXIT DO
                    exit for
                END IF
                'set jmail = nothing
                'exit do
            end if
        'loop
       
        'response.write("gennemløb nr " & loopcounter & " lukker nu " & now  & "<br>" )       
        'response.flush
        'if mailnr = mailmax then exit for
       
next

'-------------------------- slutstadie ---------------------------------------
set JMail = nothing
else
%>
        jmail tester 1000 mails
<form method="post" action="default.asp" >
Email der skal sendes til&nbsp:&nbsp&nbsp<input type="text" name="email" size="50" maxlength ="50">
<input type="submit" value="Start Jmail" name="start">
</form>       
       
       
       
        <%end if%>
Avatar billede lund_dk Praktikant
27. november 2004 - 00:10 #1
Slet ingen som kan hjælpe lille mig ? :(
Avatar billede ellebaek Nybegynder
27. november 2004 - 17:53 #2
hmm...

Jeg kan da give et forsøg :-)

prøv sådan her fx.

<%
if request.servervariables("REQUEST_METHOD") = "POST" Then

Email = request.form("email")
ENavn = " VisualCoder "
subject = "test af jmail på itrade.dk"
BodyTextto = " VisualCoder "
FromNavn = " VisualCoder "
FromMail = "admin@inetpost.dk"
SMTPNavn = "pasmtp.tele.dk"
grundnr ="0000"
mailnr=1
mailmax = 1000
loopmax = mailmax
Session.Timeout = 40
Server.ScriptTimeout =1800

set rs = server.createObject("adodb.connection")
str = "din forbindelse til databasen"
rs.open str
sql = "Select Email from nyhedsbrev"
set rs = rs.execute(sql)

while not rs.eof     

    response.write("<br><br>jmail objekt dannes " & now & "<br><br>")
    '-------------- start------------------------
    ' dimarc 4.3 JMAIL
    Set JMail = Server.CreateOBject( "JMail.Message" )
    JMail.Logging = false
    JMail.silent = falsea
    JMail.From = FromMail
    JMail.FromName = FromNavn
    JMail.Priority      = 3
    JMail.AddHeader    "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
 
    ' ---------------------Loop del ----------------------

        'do while mailnr <= Int(mailmax)
            taeller = " " & left(grundnr,4-len(cstr(mailnr))) & cstr(mailnr)
            mailnr= mailnr+1
            JMail.Subject      = subject & taeller
            JMail.AddRecipient rs.fields("email"), rs.fields("email")
            JMail.Body="Velkommen " & rs.fields("email") & " " & BodyTextto & taeller
            if not JMail.Send(SMTPNavn) then
                Response.write "<pre>" & JMail.log & "</pre>"
            else
                Response.write "Mail OK" & "-->"
                Response.write Email  & "<b>"  & "-->"
                Response.write subject  & taeller & "-->"
                Response.write BodyTextto & "</b>"
            end if
            If (mailnr MOD 20) = 0 then
                JMail.Close()
                Response.write ("<br>Con Lukket : " & now  & "<br>" )
                Response.flush
                If Response.isclientconnected()=false THEN
                    Response.Write "Vi tabte forbindelsen .... "
                    'EXIT DO
                    exit for
                END IF
                'set jmail = nothing
                'exit do
            end if
        'loop
     
        'response.write("gennemløb nr " & loopcounter & " lukker nu " & now  & "<br>" )     
        'response.flush
        'if mailnr = mailmax then exit for
rs.movenext
wend

'-------------------------- slutstadie ---------------------------------------
set JMail = nothing
else
%>
        jmail tester 1000 mails
<form method="post" action="default.asp" >
Email der skal sendes til&nbsp:&nbsp&nbsp<input type="text" name="email" size="50" maxlength ="50">
<input type="submit" value="Start Jmail" name="start">
</form>     
     
     
     
        <%end if%>
Avatar billede ellebaek Nybegynder
27. november 2004 - 17:53 #3
og så fik jeg lige trykket forkert...

Men ovenstående skulle kunne løse dit problem og så sende mailsene for dig..

Du skal så blot rette denne linie: str = "din forbindelse til databasen"

så den passer med strengen til din database..
Avatar billede lund_dk Praktikant
03. januar 2005 - 14:56 #4
nææh, virkede ikke helt efter hensigten:(
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