Avatar billede sneakraid Nybegynder
26. oktober 2005 - 09:36 Der er 3 kommentarer og
1 løsning

array og mail?

Hej experter :)

Jeg sidder med en ret stor opgave (sys jeg selv), og jeg skal have lidt hjælp fra jer, med en lille del af opgaven. Jeg vil lige starte med at oplyse at jeg sidder og arbejder med et lille system til nogle ejendomsmæglere, hvor de faktisk ville have en kunde database, eller et såkaldt kundekartotek med historik og det hele på.

Men jeg skal have lavet et lille nyhedsbrev's system, hvilket jeg ik har arbejdet med særlig meget .. så her står jeg lidt på bar bund, men håber i kan hjælpe mig.

Altså, jeg starter med at have et nyhedsbrev, som ligger i en database med et unikt id. Jeg har så lavet sådan man kan vælge lige DET brev (under admin panel) og trykke send. Nu får man så en liste frem med samtlige kunder fra kartoteket. Der er "check" boxe ud for hver enkel kunde, så man kan "vinge" af, hvilke kunder der skal modtage nyhedsbrevet. Men her kommer mit problem så .. jeg får sendt en streng videre med en masse navne/id'er, som skal deles op i et array og søges efter i databasen, plus den skal jo så finde emails frem på hvor enkel af de navne og sende nyhedsbrevet til dem. Har i nogen idé om hvordan jeg kan gøre det her?

Det ville i hvert fald være en stor hjælp, hvis kunne vise mig lidt om hvordan jeg laver mit array :)

Håber i forstår, ellers må i lige spørge.
Avatar billede fennec Nybegynder
26. oktober 2005 - 10:03 #1
Hver kontakt har vel et unikt ID, så det gemmer du sammen med checkboxen, og giver alle checkboxe samme navn:

<input type="Checkbox" name="sendTil" value="1">person1
<input type="Checkbox" name="sendTil" value="2">person2

Når siden bliver sendt samler den automatisk alle ID'er fra dem som er valgt til en komma-liste. Den kan du så bruge i en SQL-sætning, som du så løber igennem.

set rs = conn.execute("select * from kunder where id in("& request.form("sendTil") &")")
while not rs.eof
  email = rs("email")
  rs.MoveNext
wend
Avatar billede sneakraid Nybegynder
26. oktober 2005 - 10:54 #2
Tak for dit svar, jeg sad lidt fast i det her .. men du har hjulpet mig det videre :)

Tror du man kan lave en komma separeret streng, og smide den under Mail.AddAddress?
Og vil den så sende til alle sammen? Eller skal man lave mail senderen i det loop, hvor man henter mail ud fra databasen, så den sender mails mens man finder dem .. eller ville det være træls, performance mæssigt ?

        Set Mail = Server.CreateObject("Persits.MailSender")
        Mail.Host = "websmtp.******.dk"
        Mail.From = "info@******.dk"
        Mail.FromName = "Fra Mig"
        Mail.AddAddress (her kommer den lange komma separeret streng)
        Mail.Subject = "Nyhedsbrev"
        Mail.IsHTML = True
        Mail.Body = Content               
        Mail.Send
Avatar billede fennec Nybegynder
26. oktober 2005 - 11:08 #3
Den skal nærmere være ; separeret.

Flere af mailkomponenterne vil godtage ; som seperator, ellers vil kan du bruge et loop omkring "Mail.AddAddress":

Mail.FromName = "Fra Mig"
while not rs.eof
  Mail.AddAddress rs("email")
  rs.MoveNext
wend
Mail.Subject = "Nyhedsbrev"

Som en ekstra bemærkning er det ULOVLIGT at sende et nyhedsbrev ud, hvor man kan se de andre modtageres emailadd. Derfor skal du sende mails enkeltvis eller sætte dem alle som BCC modtagere (BCC modtageres email står nemlig ikke på listen).

Bcc er højest sandsynlig denne kode, men ellers kan du tjekke det i en bruger manual:

Mail.AddAddressBcc rs("email")
Avatar billede sneakraid Nybegynder
26. oktober 2005 - 12:21 #4
MANGE tak for svaret fennec . Det virker perfekt. Jeg brugte "loop omkring Mail.AddAddress" metoden og der bliver ikke vist de andres mail i den mail man modtager :)
Du får lige dine velfortjente point ;)
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