28. juni 2001 - 13:25
Der er
44 kommentarer og 1 løsning
Hvad er der galt?
Hejsa - Jeg er igang med at lave et admin til udsendelse af nyhedsbrev, men mailen bliver ikke sendt. Den løber godt nok koden igennem osv. og melder ikke fejl, men jeg får ikke nogen mail! Her er min kode: <% Option Explicit %> <% Dim Connect, rs Set Connect = Server.CreateObject(\"ADODB.Connection\") Connect.Open \"jupiter\" Set rs = Server.CreateObject(\"ADODB.Recordset\") rs.Open \"SELECT * FROM Test\", Connect, 1, 3 %> <html> <head> <title>Jupiter - Administration</title> </head> <body bgcolor=\"#999999\"> <form method=\"post\" action=\"news_letter.asp?action=send\"> <table border=\"0\" cellpadding=\"0\" cellspacing=\"5\" width=\"600\"> <tr> <td width=\"600\" align=\"left\" colspan=\"2\"><font face=\"Verdana\" size=\"4\">Send Nyhedsbrev</font></td> </tr> <tr> <td width=\"100\" align=\"left\"><font face=\"Verdana\" size=\"2\">Til:</font></td> <td width=\"500\" align=\"left\"> <select name=\"receiver\"> <option selected value=\"\">Vælg modtagere</option> <option value=\"<% do until rs.EOF Response.Write(\"\"&rs(\"Mail\")&\"\") rs.MoveNext loop %>\">Testliste</option> </select> </td> </tr> <tr> <td width=\"100\" align=\"left\"><font face=\"Verdana\" size=\"2\">Fra:</font></td> <td width=\"500\" align=\"left\"><input type=\"TEXT\" name=\"navn\" size=\"30\" value=\"Jupiter Webmaster\"></td> </tr> <tr> <td width=\"100\" align=\"left\"><font face=\"Verdana\" size=\"2\">Svar-mail:</font></td> <td width=\"500\" align=\"left\"><input type=\"TEXT\" name=\"email\" size=\"30\" value=\"Jupiter@Scanbox.Com\"></td> </tr> <tr> <td width=\"100\" align=\"left\"><font face=\"Verdana\" size=\"2\">Emne:</font></td> <td width=\"500\" align=\"left\"><input type=\"TEXT\" name=\"subject\" size=\"30\"></td> </tr> <tr> <td width=\"100\" align=\"left\" valign=\"top\"><font face=\"Verdana\" size=\"2\">Text:</font></td> <td width=\"500\" align=\"left\"><textarea name=\"body\" rows=\"20\" cols=\"50\"></textarea></td> </tr> <tr> <td width=\"100\" align=\"left\"></td> <td width=\"500\" align=\"left\"><input type=\"SUBMIT\" name=\"submit\" value=\"Send nyhedsbrev\"></td> </tr> </table> </form> <% Select Case Request.QueryString(\"action\") Case \"send\" Dim Mail, Fra, Afsender, Modtager, Tekst, Emne Set Connect = Server.CreateObject(\"ADODB.Connection\") Connect.Open \"jupiter\" Set rs = Server.CreateObject(\"ADODB.Recordset\") rs.Open \"SELECT * FROM Test\", Connect, 1, 3 Set Fra = Request.Form(\"navn\") Set Afsender = Request.Form(\"email\") Set Modtager = Request.Form(\"receiver\") Set Emne = Request.Form(\"subject\") Set Tekst = Request.Form(\"body\") Set Mail = Server.CreateObject(\"CDONTS.NewMail\") Call Mail.Send(Fra, rs(\"Mail\"), Emne, Tekst) Set Mail = Nothing Response.Redirect(\"news_letter_ok.asp\") End Select %> </html> </body>
Annonceindlæg fra Cognizant
jeg har en script du kan bruge !
skal det ikke se nogenlunde sådan ud: Set mail = CreateObject(\"CDONTS.NewMail\") mail.From = afsender mail.To = modtager mail.Subject = emne mail.Body = tekst mail.Send set mail = Nothing
okay: Det vil jeg gerne se!
Det er lige meget - bare det fungerer!
erhm - hvad med at prøve mit?
keysersoze: Har jeg lige prøvet, men det ser ikke ud til at fungere! Stadig samme problem som beskrevet ovenfor!
okay: Jeg skal stadig kunne trække e-mailadresserne fra en tabel!!!!
understøtter dit webhotel CDONTS så?
28. juni 2001 - 13:50
#10
keysersoze: Ja - vores webserver har CDONTS.....så det er ikke der der er problemer! Skulle vel også få en fejlmeddelelse hvis ikke det var installeret!?
28. juni 2001 - 14:01
#11
nu har jeg ikke indsigt i hvad de forskellige variabler indeholder... men mail.From = SKAL så vidt jeg husker være en e-mail...
28. juni 2001 - 14:03
#12
keysersoze: Tester lige!
28. juni 2001 - 14:03
#13
keysersoze: Ser ikke ud til at fungere! :o(
28. juni 2001 - 14:13
#14
prøv lige at teste med dette (direkte fra activeserverpages): <% Dim objCDO \' Her skabes en reference til CDONTS.NewMail objektet Set objCDO = Server.CreateObject(\"CDONTS.NewMail\") \' Her sættes egenskaber og metoder objCDO.From = \"info@activeserverpages.dk\" objCDO.To = \"modtager@email.adr\" objCDO.Subject \"Kære modtager\" objCDO.Body \"Dette er blot en test\" objCDO.Send \' Husk at fjerne dit objekt fra hukomelsen Set objCDO = Nothing %>
28. juni 2001 - 14:15
#15
bare det fungere.... hvor vil du teste den henne ??
28. juni 2001 - 14:19
#16
okay: Hos os selv - på vores egen webserver!
28. juni 2001 - 14:22
#17
keysersoze: Får nu følgende fejl: Microsoft VBScript runtime error \'800a01b6\' Object doesn\'t support this property or method: \'To\' /admin/news_letter.asp, line 78
28. juni 2001 - 14:23
#18
men nu skal der jo nok stå noget andet end info@activeserverpages.dk modtager@email.adr
28. juni 2001 - 14:25
#19
keysersoze: Var fordi der skulle være et lighedstegn (=) Men det hjalp ikke på det!
28. juni 2001 - 14:26
#20
Brugte min egen e-mailaddy!
28. juni 2001 - 14:36
#21
jeg har lige lavet testen fra min egen side med dette: <% Dim objCDO \' Her skabes en reference til CDONTS.NewMail objektet Set objCDO = Server.CreateObject(\"CDONTS.NewMail\") \' Her sættes egenskaber og metoder objCDO.From = \"kim@soze.dk\" objCDO.To = \"kim@soze.dk\" objCDO.Subject = \"Kære modtager\" objCDO.Body = \"Dette er blot en test\" objCDO.Send \' Husk at fjerne dit objekt fra hukomelsen Set objCDO = Nothing %> og det virker som det skal...
28. juni 2001 - 14:39
#22
Underligt!!!!????? Har skrevet det på samme måde, dog med et andet variable-name, men det skulle jo ikke have nogen betydning når bare det er defineret korrekt!!!!
28. juni 2001 - 14:51
#23
må jeg prøve at se det du har testet?
28. juni 2001 - 14:53
#24
Select Case Request.QueryString(\"action\") Case \"send\" Dim Mail, Fra, Afsender, Modtager, Tekst, Emne Fra = Request.Form(\"navn\") Modtager = Request.Form(\"receiver\") Emne = Request.Form(\"subject\") Tekst = Request.Form(\"body\") Set Mail = Server.CreateObject(\"CDONTS.NewMail\") Mail.From = \"Jupiter@Scanbox.com\" Mail.To = \"michaelpe@scanbox.com\" Mail.Subject = \"Kære modtager\" Mail.Body = \"Dette er en test\" Mail.Send Set Mail = Nothing Response.Redirect(\"news_letter_ok.asp\") End Select ---------- Men med den kode henter den jo ikke noget fra mine formularfelter!!!??
28. juni 2001 - 15:07
#25
lav en asp-fil med udelukkende dette og INTET andet... virker dette, er det lettere at sætte det op til det du skal bruge... ----------------------- <% Dim objCDO \' Her skabes en reference til CDONTS.NewMail objektet Set objCDO = Server.CreateObject(\"CDONTS.NewMail\") \' Her sættes egenskaber og metoder objCDO.From = \"Jupiter@Scanbox.com\" objCDO.To = \"michaelpe@scanbox.com\" objCDO.Subject = \"Kære modtager\" objCDO.Body = \"Dette er blot en test\" objCDO.Send \' Husk at fjerne dit objekt fra hukomelsen Set objCDO = Nothing %>
28. juni 2001 - 15:14
#26
Der sker ikke noget som helst!!!!
28. juni 2001 - 15:25
#27
ja... hvis det ikke virker så kan jeg ikke hjælpe dig! det virker fint hos mig, og kommer der ingen fejl og ingen mail hos dig, så er der ikke noget jeg kan gøre... har du mulighed for andre mailkomponenter?
28. juni 2001 - 15:26
#28
Hmmm - det ved jeg ikke - det må jeg lige undersøge! Du har ikke evt. noget der kører via j-mail?? Ser jo ud som om \"okay\" ikke gør noget videre i sagen....indtil videre ihvert fald! ;o)
28. juni 2001 - 15:39
#29
Set JMail = Server.CreateObject(\"JMail.SMTPMail\") JMail.ServerAddress = \"din.smtp\" JMail.Sender = din.email JMail.Subject = subj JMail.Body = tekst JMail.AddRecipient modtager.email JMail.Execute set JMail = nothing
28. juni 2001 - 15:40
#30
Henter den så fra de formularfelter jeg har??
28. juni 2001 - 15:45
#31
Hvad med modtager.email??? Hvad skal den ændres til?? E-mailadresserne skal jo hentes fra en DB!?
28. juni 2001 - 15:47
#32
læg det fx i en variabel email = rs(\"email\") JMail.AddRecipient email
28. juni 2001 - 15:48
#33
nej... den henter ikke noget - det er et eksempel...
28. juni 2001 - 21:25
#34
Når man bruger CDONTS bruger man så ikke den indbyggede smtp-server i IIS til at sende mailsene videre til fx. en exhange server, som så smider dem videre rundt i verden?
28. juni 2001 - 21:26
#35
men det ligger måske implicit i denne post at det er konfigureret korrekt?
28. juni 2001 - 21:56
#36
man må jo gå ud fra et webhotellet er sat ordentligt op...
29. juni 2001 - 08:31
#37
Fedt - det virker nu......det er bare kanon! Tak skal du ha\' keysersoze - du er min helt! ;o)
29. juni 2001 - 08:32
#38
Lige en ting mere.....hvordan separerer man e-mailadresserne rigtigt??? Er det med ; eller med ,?????
29. juni 2001 - 10:41
#39
separerer dem? så den samme besked bliver sendt til flere? ved det ikke - plejer at loope mig igennem do while... mail loop
29. juni 2001 - 10:45
#40
Henter jo mine mailadresser fra en tabel jo! Og den tabel henter jo allerede på den foregående side! Den samme besked skal jo ud til en masse brugere! Kan du ikke prøve at skrive hvordan du ville gøre det???
29. juni 2001 - 10:55
#41
do while not rs.eof besked-ting rs.movenext loop
29. juni 2001 - 10:55
#42
Og besked-ting er alt det med JMail!?
29. juni 2001 - 11:02
#43
ja...
29. juni 2001 - 11:06
#44
Okay - har lige testet - poster hele løsningen når jeg har rettet den til! Tak for hjælpen - pointene er dine! ;0)
29. juni 2001 - 11:39
#45
Her er den endelige løsning: <% Dim subj, tekst, email, Connect, rs Set Connect = Server.CreateObject(\"ADODB.Connection\") Connect.Open \"jupiter\" subj = Request.Form(\"subject\") tekst = Request.Form(\"body\") email = Request.Form(\"receiver\") If email = \"Danmark\" Then Set rs = Server.CreateObject(\"ADODB.Recordset\") rs.Open \"SELECT E_mail FROM Jupiter_club_dk\", Connect, 1, 3 End if If email = \"Norge\" Then Set rs = Server.CreateObject(\"ADODB.Recordset\") rs.open \"SELECT E_mail FROM Jupiter_club_no\", Connect, 1, 3 End if If email = \"Sverige\" Then Set rs = Server.CreateObject(\"ADODB.Recordset\") rs.open \"SELECT E_mail FROM Jupiter_club_se\", Connect, 1, 3 End if If email = \"Finland\" Then Set rs = Server.CreateObject(\"ADODB.Recordset\") rs.open \"SELECT E_mail FROM Jupiter_club_sf\", Connect, 1, 3 End if If email = \"England\" Then Set rs = Server.CreateObject(\"ADODB.Recordset\") rs.open \"SELECT E_mail FROM Jupiter_club_uk\", Connect, 1, 3 End if do while not rs.EOF Set JMail = Server.CreateObject(\"JMail.SMTPMail\") JMail.ServerAddress = \"mail.scanbox.dk\" JMail.Sender = \"jupiter@scanbox.com\" JMail.Subject = subj JMail.Body = tekst JMail.AddRecipient rs(\"Mail\") JMail.Execute rs.MoveNext loop Set JMail = Nothing Response.Redirect(\"news_letter_ok.asp\") %>
Kurser inden for grundlæggende programmering