Avatar billede twg Nybegynder
18. juli 2001 - 08:33 Der er 14 kommentarer og
1 løsning

SQL

okeee nu har jeg fået smækket følgende kode sammen:
<!-- #include file=\"conn.asp\" -->
<%mail=request.querystring(\"mail\")%>
<%
sql=\"SELECT * FROM speakopret, speakkommentar WHERE speakopret.ident=\'\"&request.querystring(\"id\")&\"\' and speakkommentar.ident=\'\"&request.querystring(\"id\")&\"\'\"
set RS=Conn.Execute(sql)%>
<%do while not RS.eof
Set Mailer = Server.CreateObject(\"SMTPsvg.Mailer\")
Mailer.RemoteHost = \"mail.scannet.dk\"
Mailer.FromName = \"none\"
Mailer.FromAddress = \"noreply@nisser.dk\"
Mailer.AddRecipient RS(\"navn\"),RS(\"email\")
Mailer.Subject = \"Bestilling\"
Mailer.BodyText = \"nope\"
Mailer.ContentType = \"text/html\"
Mailer.CharSet = 2
if not Mailer.SendMail then
  Response.Write \" Mailing Failed... Error is: <br>\"
  Response.Write Mailer.Response
else
  Response.Write \" sent successfully...<p>\"
end if

Set Mailer = nothing
RS.movenext
loop
%>

Hvordan gør man så sådan at hvis der er to email adresser i db\'en der er den samme, så bliver der kun sendt en mail

og hvordan gør sådan at der ikke bliver send ten mail til den adresse der er i variablen mail ?

--
Mic
Avatar billede Slettet bruger
18. juli 2001 - 08:44 #1
Måske kan du finde noget på http://www.w3schools.com/sql/
Avatar billede twg Nybegynder
18. juli 2001 - 08:52 #2
Jeg ville zq egnetlig hellere have en færdig sætning
Avatar billede erikjacobsen Ekspert
18. juli 2001 - 08:54 #3
1) Du laver en

  SELECT max(navn) as n,email FROM speakopret, speakkommentar WHERE ....  GROUP BY email

dvs. grupperer på email, så får du kun én, og vælger så et af de navne, der
er knyttet til, her tilfældigvis det største - de kan jo være forskellige selv
om emailen er ens (eller lader være med at sende navn med).

Længere nede skal du så skrive
  Mailer.AddRecipient RS(\"n\"),RS(\"email\")
Avatar billede Slettet bruger
18. juli 2001 - 08:55 #4
<%
if 2 email adresser som er den samme
then send kun en gang
%>
Kunne ikke lade vær\' :o)
Avatar billede erikjacobsen Ekspert
18. juli 2001 - 08:56 #5
2)
<%do while not RS.eof
  if mail<>rs(\"email) then
    Set Mailer = Server.CreateObject(\"SMTPsvg.Mailer\")
    ....osv
    Set Mailer = nothing
  end if
  RS.movenext
  loop
%>
Avatar billede twg Nybegynder
18. juli 2001 - 08:57 #6
Undskyld men jeg fatter ikke en ...... af det
Avatar billede erikjacobsen Ekspert
18. juli 2001 - 09:10 #7
Vi tager én ting af gangen - du har vel mulighed for at afteste det

Udskift linien
sql=\"SELECT max(navn) as n,emal FROM speakopret, speakkommentar WHERE speakopret.ident=\'\"&request.querystring(\"id\")&\"\' and speakkommentar.ident=\'\"&request.querystring(\"id\")&\"\'\"

med linien
sql=\"SELECT * FROM speakopret, speakkommentar WHERE                      speakopret.ident=\'\"&request.querystring(\"id\")&\"\' and                      speakkommentar.ident=\'\"&request.querystring(\"id\")&\"\' group by email\"

og linien
Mailer.AddRecipient RS(\"navn\"),RS(\"email\")

med linien
Mailer.AddRecipient RS(\"n\"),RS(\"email\")
Avatar billede twg Nybegynder
18. juli 2001 - 09:32 #8
[Microsoft][ODBC Microsoft Access Driver] The specified field \'navn\' could refer to more than one table listed in the FROM clause of your SQL statement.

sendmail.asp, line 5
Avatar billede erikjacobsen Ekspert
18. juli 2001 - 10:06 #9
Så er det enten max(speakopret.navn) eller max(speakkommentar.navn)
Du ved selv hvilken tabel den ligger i
Avatar billede twg Nybegynder
18. juli 2001 - 10:29 #10
Den ligger i begge
Avatar billede twg Nybegynder
18. juli 2001 - 10:31 #11
max(speakkommentar.navn)
gir denne fejl
The specified field \'email\' could refer to more than one table listed in the FROM clause of your SQL statement.

sendmail.asp, line 5
Avatar billede erikjacobsen Ekspert
18. juli 2001 - 11:10 #12
så skal du gøre det samme med email - altså angive tabelnavnet foran
Avatar billede twg Nybegynder
18. juli 2001 - 11:15 #13
Den siger stadig
The specified field \'email\' could refer to more than one table listed in the FROM clause of your SQL statement.
Avatar billede erikjacobsen Ekspert
18. juli 2001 - 11:41 #14
Lad os så se hvad du har. Det skal også på den være efter GROUP BY
Avatar billede twg Nybegynder
27. juni 2002 - 14:28 #15
fandt selv ud af det
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