Avatar billede no_doubt Nybegynder
12. december 2007 - 20:17 Der er 1 kommentar og
1 løsning

Jmail og loop

Hvordan får jeg udskrevet ting til en mail som skal gennem et loop

denne:
sql1 = "SELECT * FROM varekurv,produkter WHERE varekurv.produkt_id=produkter.id AND varekurv.ordreid = " & request.form("id") &""
Set rs1 = conn.Execute(sql1)

Giver mig de vare der er bestilt.

Mailen ser sådan ud nu:

Kære XX XX
Din ordre 23 er blevet godkendt af XX.dk

Ordre: 23 indholder:

Koden jeg bruger ser sådan ud:

<%
if request.form("status") = "Godkendt" then
Set JMail = Server.CreateObject ("JMail.SMTPMail")
JMail.ServerAddress = "localhost"
JMail.Sender = "xx@xx.dk"
JMail.Subject = "Kimmie - Ordre " & rs1("id") &" - Godkendt"
JMail.AddRecipient rs1("email")
JMail.Body = "Kære " & rs1("fornavn") & " " & rs1("efternavn") & vbCrLf & "Din ordre " & rs1("id") & " er blevet godkendt af Kimmie.dk" & vbCrLf & vbCrLf & "Ordre: " & rs1("id") & " indholder: " & vbCrLf
JMail.Execute
end if
%>

Mailen skulle gerne ende med at se sådan ud:

Kære XX XX
Din ordre 23 er blevet godkendt af XX.dk

Ordre: 23 indholder:
2 x varenavn - xxx.-
10 x varenavn - xxx.-

osv osv

antal hedder bare antal, og varenavn produktnavn, og pris jaa pris :-)
Avatar billede w13 Novice
12. december 2007 - 21:09 #1
sql1 = "SELECT * FROM varekurv,produkter WHERE varekurv.produkt_id=produkter.id AND varekurv.ordreid = " & request.form("id") &""
Set rs1 = conn.Execute(sql1)
^ Her henter du vareoplysninger og lægger dem i rs1.

Men i din senere kode henter du fornavn, efternavn o.lign. fra rs1? Det er ikke lige til at gennemskue. Hvordan er din database opbygget, siden du gerne vil loope varer igennem?

Du kan "samle" JMail.Body sådan her:

Do While noget
  JMail.Body = JMail.Body&rs("vare")&", "
  rs.MoveNext
Loop

Måske du kan finde ud af det vha. det.
Avatar billede mitbrugernavn Praktikant
12. december 2007 - 22:48 #2
jeg ville gøre således

sql1 = "SELECT * FROM varekurv,produkter WHERE varekurv.produkt_id=produkter.id AND varekurv.ordreid = " & request.form("id") &""
Set rs1 = conn.Execute(sql1)
if not rs1.eof then
navn = rs1("fornavn")
efternavn = rs1("efternavn")
ordre_id = rs1("id")
do
mail_skriv = mail_skriv & vbCrLf & rs1("antal") & " x " & rs1("varenavn") & " - " & rs1("pris")
rs1.movenext
loop while not rs1.eof
end if

if request.form("status") = "Godkendt" then
Set JMail = Server.CreateObject ("JMail.SMTPMail")
JMail.ServerAddress = "localhost"
JMail.Sender = "xx@xx.dk"
JMail.Subject = "Kimmie - Ordre " & ordre_id &" - Godkendt"
JMail.AddRecipient rs1("email")
JMail.Body = "Kære " & fornavn & " " & efternavn & vbCrLf & "Din ordre " & ordre_id & " er blevet godkendt af Kimmie.dk" & vbCrLf & vbCrLf & "Ordre: " & ordre_id & " indholder: " & vbCrLf & mail_skriv
JMail.Execute
end if
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