Avatar billede cotus Nybegynder
22. juni 2002 - 15:39 Der er 4 kommentarer og
1 løsning

Send mail ved nyt indlæg

Hvordan gør jeg sådan, at når der kommer et nyt indlæg i en tråd, sendes en e-mail til alle der har skrevet i tråden?

/cotus
Avatar billede askhoej Praktikant
22. juni 2002 - 16:04 #1
Hvordan er din tråd gemt? - en database, tekstfil, xml...
Avatar billede cotus Nybegynder
22. juni 2002 - 16:46 #2
Access-database
Avatar billede oasen Nybegynder
23. juni 2002 - 01:49 #3
Når en bruger sender et indlæg, gemmes dette jo i DB'en. Ved samme lejlighed kan du sende en mail med flere modtagere. Adresserne henter du jo fra DB'en. Hvordan lagrer du adresserne? I et array eller én i hver record?

Et eksempel med ASPmail:

*************************************************'

        Dim Mailer
        Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
        Mailer.FromName  = "Mig"
        Mailer.FromAddress= "do_not@reply.dk"
        Mailer.RemoteHost = "mail.xxx.com"

        strSQL = "Select * From DinTabel"
        Set rs = Conn.Execute(strSQL)

        Do While Not rs.EOF
            Mailer.AddRecipient "" & rs("Navn") & "", "" & rs("Email") & ""
            rs.MoveNext
        Loop
       
        Mailer.Subject    = "Nyt indlæg i tråden, hvor du deltager"
        Mailer.BodyText  = "Der er netop kommet et nyt indlæg. Gå ind på www.mitdomaene.dk for at se dette."

        if Mailer.SendMail then
              '...
        else
              '...
        end if

        Set Mailer = Nothing
        Set rs = Nothing
Avatar billede cotus Nybegynder
23. juni 2002 - 10:07 #4
Så hvis en person har skrevet 3 gange i indlægget, får han vel 3 mails?

/cotus
Avatar billede oasen Nybegynder
24. juni 2002 - 16:04 #5
Ja, men det kan du hurtigt lave om på:

        Dim Mailer
        Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
        Mailer.FromName  = "Mig"
        Mailer.FromAddress= "do_not@reply.dk"
        Mailer.RemoteHost = "mail.xxx.com"

        strSQL = "Select * From DinTabel Group By Navn"
        Set rs = Conn.Execute(strSQL)

        Do While Not rs.EOF
            Mailer.AddRecipient "" & rs("Navn") & "", "" & rs("Email") & ""
            rs.MoveNext
        Loop
       
        Mailer.Subject    = "Nyt indlæg i tråden, hvor du deltager"
        Mailer.BodyText  = "Der er netop kommet et nyt indlæg. Gå ind på www.mitdomaene.dk for at se dette."

        if Mailer.SendMail then
              '...
        else
              '...
        end if

        Set Mailer = Nothing
        Set rs = Nothing



"Navn" og "Email" erstattes med dine kolonners navne, hvis de altså hedder noget andet.
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