indholdet fra alle felter fra navn og nedefter skal sendes til den mail man indtaster i modtageremail. Hvis det er muligt kunne jeg godt tænke mig at der automatisk blev sendt en mail til afsenderen hvor der står tak for din tilmelding.
kan dette lade sig gøre..??
Håber virkelig nogen hartid og lyst til at hjælpe..!!
Noget i denne stil: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Untitled</title> </head> <body>
<% if Request.querystring("mode") = "mail" then Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.FromName = "Fra hjemmesiden" Mailer.FromAddress= Request.Form("afsMail") Mailer.RemoteHost = "din.mailserver.dk" Mailer.AddRecipient Request.Form("modMail"), Request.Form("navn") Mailer.Subject = Request.Form("emne") body = "" body = body & "navn: "& Request.Form("navn") & VbCrLf body = body & "adresse: "& Request.Form("adr") & VbCrLf body = body & "postnr: "& Request.Form("post") & VbCrLf body = body & "by: "& Request.Form("by") & VbCrLf body = body & "telefon: "& Request.Form("tlf") & VbCrLf Mailer.BodyText = body if Mailer.SendMail then Response.Write "Mail sendt til modtager" else Response.Write "Mail fejlede til modtager. Kode: " & Mailer.Response end if Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.FromName = "Fra hjemmesiden" Mailer.FromAddress= Request.Form("afsMail") Mailer.RemoteHost = "din.mailserver.dk" Mailer.AddRecipient Request.Form("afsMail") Mailer.Subject = Request.Form("emne") body = "Tak for din tilmelding" & VbCrLf body = body & "navn: "& Request.Form("navn") & VbCrLf body = body & "adresse: "& Request.Form("adr") & VbCrLf body = body & "postnr: "& Request.Form("post") & VbCrLf body = body & "by: "& Request.Form("by") & VbCrLf body = body & "telefon: "& Request.Form("tlf") & VbCrLf Mailer.BodyText = body if Mailer.SendMail then Response.Write "Mail sendt til afsender" else Response.Write "Mail fejlede til afsender. Kode: " & Mailer.Response end if end if %> <form name="myForm" method="post" action="denneSide.asp?mode=mail">
Du skal også være opmærksom på at nogle servere ikke vil afsende mailen, hvis afsender mailen ikke er i deres system. Derfor skal FromName og FromAddress næsten altid være hardcoded:
Mailer.FromName = "Et eller andet navn. Kan være hvad som helst" Mailer.FromAddress= "enSpecifikEmailAdrDuHarHosDinUdbyder@mail.dk"
Har lige prøvet at rette igen og får denne fejl: Mail fejlede til modtager. Kode: FromAddress Property cannot be blank. Microsoft VBScript runtime error '800a01c2'
Wrong number of arguments or invalid property assignment: 'AddRecipient'
/eks2.asp, line 32
-------------------------------- lige nu ser min kode således ud -------------------------------- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Untitled</title> </head> <body>
<% if Request.querystring("mode") = "mail" then Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.FromName = "Fra hjemmesiden" Mailer.FromAddress= Request.Form("afsMail") Mailer.RemoteHost = "mail.kunstzonen.dk" Mailer.AddRecipient Request.Form("modMail"), Request.Form("navn") Mailer.Subject = Request.Form("emne") body = "" body = body & "navn: "& Request.Form("navn") & VbCrLf body = body & "adresse: "& Request.Form("adr") & VbCrLf body = body & "postnr: "& Request.Form("post") & VbCrLf body = body & "by: "& Request.Form("by") & VbCrLf body = body & "telefon: "& Request.Form("tlf") & VbCrLf Mailer.BodyText = body if Mailer.SendMail then Response.Write "Mail sendt til modtager" else Response.Write "Mail fejlede til modtager. Kode: " & Mailer.Response end if Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.FromName = "Fra hjemmesiden" Mailer.FromAddress= Request.Form("afsMail") Mailer.RemoteHost = "din.mailserver.dk" Mailer.AddRecipient Request.Form("afsMail") Mailer.Subject = Request.Form("emne") body = "Tak for din tilmelding" & VbCrLf body = body & "navn: "& Request.Form("navn") & VbCrLf body = body & "adresse: "& Request.Form("adr") & VbCrLf body = body & "postnr: "& Request.Form("post") & VbCrLf body = body & "by: "& Request.Form("by") & VbCrLf body = body & "telefon: "& Request.Form("tlf") & VbCrLf Mailer.BodyText = body if Mailer.SendMail then Response.Write "Mail sendt til afsender" else Response.Write "Mail fejlede til afsender. Kode: " & Mailer.Response end if end if %> <form name="myForm" method="post" action="eks2.asp?mode=mail">
Mail fejlede til modtager. Kode: At least one Recipient, CC or BCC must be enteredMail fejlede til afsender. Kode: [11004] Valid name, no data record of requested type
Form data: Mail fejlede til modtager. Kode: At least one Recipient, CC or BCC must be enteredMail fejlede til afsender. Kode: [11004] Valid name, no data record of requested type
Ok... Har lige tjekket din kildekode. Den er total hen i vejret, hvorfor siden selvfølgelig ikke fungere.
Lav lige en side med intet andet end den kode jeg skrev i første post. Det vil helt sikkert virke. Du skal dog lige ændre AddRecipient da den blev kaldt forkert (post 28/08-2007 08:10:53)
Det første du gør er at lave en side med intet andet end denne kode: [test1.asp] <% Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.FromName = "Joe’s Widgets Corp." Mailer.FromAddress= "Joe@somehost.com" Mailer.RemoteHost = "mailhost.localisp.net" Mailer.AddRecipient "John Smith", "jsmith@anotherhostname.com" Mailer.Subject = "Great SMTP Product!" Mailer.BodyText = "Dear Stephen" & VbCrLf & "Your widgets order has been processed!" if Mailer.SendMail then Response.Write "Mail sent..." else Response.Write "Mail send failure. Error was " & Mailer.Response end if %>
Den retter du disse 3 linjer på, så din passer til din server og email adresse:
det er fordi siden åbner i en mainframe i en cms webshop. alt koden til de andre frames fejler ikke noget de er købt færdigprogrammeret som en webshop. det kan jo ikke passe at den side vi prøver at lave nu ikke kan køre i frames.
Så har du et eller andet i dit CMS som ødelækker det. Og nej, du kører ikke i frames. Hvis du gjorde ville en "Vis kilde..." kun have givet min kode i hovedframen og layoutet i de andre frames, men den har det hele med.
Men kan du du ikke bare få lavet en fil uden alt det layout?? Jeg vil have en fil PRÆSIS, som du kan se på den side jeg linkede til tidligere. Intet andet...
Så, ved vi i det mindste at koden fungere, hvilket er første skridt.
Nu skal du så bare have fundet ud af hvorfor dit CMS ødelækker det. Det kan jeg af naturlige årsager ikke svare på, uden at have set CMS koden (ASP delen af den).
Vi ved scriptet virker, men nå du smider det i dit CMS gør det ikke. Hvis du ikke kan vise mig/os hele CMS koden (kan jo være noget license, som man ikke må pille i), må du selv klare resten. Problemet opstår jo her i...
jeg kan desværre ikke få adgag til at ændre i mit cms system.
så jeg har besluttet at lave et popup vindue i stedet det må da virke..!?!
hvis vi tager udgangspunkt den anden kode du sendte her til sidst altså [test2.asp],
kan vi så hardcode den email og det navn der sendes til så personen der ønsker at tilmelde sig kun skal udfylde følgende felter med navn, adresse, postnr., by, telefon, email, altså disse oplysninger sendes til mig i en mail.??.
og det rigtig fede ville være hvis man så i sammen omgang kunne sende en mail til personen der opretter sig hvor der står fra min side og som emne tak for din registrering.
Du kan sagtens sætte dit eget navn ind, samt sende en besked til bestilleren:
<% if Request.querystring("mode") = "mail" then body = "Navn: "& Request.Form("Navn") &vbcrlf body = body& "Email: "& Request.Form("Email") &vbcrlf body = body& "Adr: "& Request.Form("Adr") &vbcrlf body = body& "Post: "& Request.Form("Post") &vbcrlf body = body& "By: "& Request.Form("By") &vbcrlf body = body& "Tlf: "& Request.Form("Tlf") &vbcrlf
Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.FromName = "Dit Navn Her." Mailer.FromAddress= "dinEmail@adresse.dk" Mailer.RemoteHost = "din.mailserver.dk" Mailer.AddRecipient Request.Form("modName"), Request.Form("modMail") Mailer.Subject = "Tak for deres bestilling" Mailer.BodyText = "Vi har registeret følgende om dem:"& vbcrlf & body if Mailer.SendMail then Response.Write "Mail sent..." else Response.Write "Mail send failure. Error was " & Mailer.Response end if Set Mailer = nothing Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.FromName = "Dit Navn Her." Mailer.FromAddress= "dinEmail@adresse.dk" Mailer.RemoteHost = "din.mailserver.dk" Mailer.AddRecipient "Dit navn her", "dinEmail@adresse.dk" Mailer.Subject = "Der er oprettet en ny tilmelding på hjemmesiden" Mailer.BodyText = body if Mailer.SendMail then Response.Write "Mail sent..." else Response.Write "Mail send failure. Error was " & Mailer.Response end if end if %> <form name="myForm" method="post" action="test2.asp?mode=mail"> Navn: <input type="Text" name="Navn" value=""><br> Email: <input type="Text" name="Email" value=""><br> Adr: <input type="Text" name="Adr" value=""><br> Post: <input type="Text" name="Post" value=""><br> By: <input type="Text" name="By" value=""><br> Tlf: <input type="Text" name="Tlf" value=""><br> <input type="Submit" value="send"> </form>
super nu har jeg endelig fået det til at virke som det skal..
kan du hjælpe mig med asp-upload også.?
jeg har allerede en upload side men jeg vil gerne have kombineret de to sider, så samtidig med der uploades et billede får jeg en mail med filnavnet og nogle informationer som man selv udfylder omkring billedet.
det upload script jeg har nu uploader op til 3 filer, og gør ikke andet men jeg vil gerne have det kombineret med mail scriptet så der automatisk sendes en mail til mig når en fil er blevet uploadet...
jeg kom til at tænke på jeg har en anden tråd du kan svare i hvis det er så kan du få point for begge tråde hvis det er.. nu har du jo hjulpet mig med to ting..
Skal der altid uploades 3 filer, eller er det op til kunde, så denne evt vælger kun at uploade 1 fil??
Hvis det er op til kunden, vil jeg anbefale at scriptet kun kan klare 1 fil upload af gangen, da det ellers bliver indviklet. De må derfor gå ind på "upload" flere gange hvis de ønsker flere filer. Er det en mulighed at lave det sådan eller er filupload en "one time thing" i forbindelse med f.eks en bruger opsætning??
det er fint nok hvis man kun uploader en fil af gangen, men kan man efter upload lave så den bliver på siden og kun renser felterne eller skal man klikke sig ind på siden forfra.?
if Request.querystring("mode") = "upload" then Set Upload = Server.CreateObject("Persits.Upload") Upload.Savevirtual("/upload") felt1 = Upload.form("felt1") felt2 = Upload.form("felt2") Set File = Upload.Files("FILE1") If File Is Nothing Then Response.write "Ingen fil valgt" response.end else filename = File.Filename body = "Filnavn: "& filename &vbcrlf body = body & "Felt1: "& felt1 body = body & "Felt2: "& felt2
Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.FromName = "Dit Navn Her." Mailer.FromAddress= "dinEmail@adresse.dk" Mailer.RemoteHost = "din.mailserver.dk" Mailer.AddRecipient "Dit navn her", "dinEmail@adresse.dk" Mailer.Subject = "Der er uploaded en fil" Mailer.BodyText = body if not Mailer.SendMail then Response.Write "Mail send failure. Error was " & Mailer.Response response.end end if end if response.redirect(Request.ServerVariables("SCRIPT_NAME")) end if %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
I stedet for en redirect laver du bare kode: ... ... if not Mailer.SendMail then Response.Write "Mail send failure. Error was " & Mailer.Response response.end end if end if %> Filen er uploaded<br> Vil du uploade en fil mere <a href="<%= Request.ServerVariables("SCRIPT_NAME") %>">klik her</a><br> Gå til forsiden <a href="forside.asp">klik her</a>
if Request.querystring("mode") = "upload" then Set Upload = Server.CreateObject("Persits.Upload") Upload.Savevirtual("/upload") felt1 = Upload.form("felt1") felt2 = Upload.form("felt2") Set File = Upload.Files("FILE1") If File Is Nothing Then Response.write "Ingen fil valgt" response.end else filename = File.Filename body = "Filnavn: "& filename &vbcrlf body = body & "Felt1: "& felt1 body = body & "Felt2: "& felt2
Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.FromName = "Dit Navn Her." Mailer.FromAddress= "dinEmail@adresse.dk" Mailer.RemoteHost = "din.mailserver.dk" Mailer.AddRecipient "Dit navn her", "dinEmail@adresse.dk" Mailer.Subject = "Der er uploaded en fil" Mailer.BodyText = body if not Mailer.SendMail then Response.Write "Mail send failure. Error was " & Mailer.Response response.end end if end if %> Filen er uploaded<br> Vil du uploade en fil mere <a href="<%= Request.ServerVariables("SCRIPT_NAME") %>">klik her</a><br> Gå til forsiden <a href="forside.asp">klik her</a>
<% response.end end if %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
og hvis man så kan lave en tjekbox hvor der på forhånd er markeret NEJ men man kan markere JA med teksten "skal dette billede representere dit navn og dine værker.? hvor jeg selvfølgelig får enten ja eller nej med i den mail der sendes til mig evt. med en kort tekst "er billedet valgt som representant JA/NEJ"
Du skal bare smide de ekstra felter på som du vil have. De kan alle fanges med Upload.form("feltNavn"). Eneste jeg ville ændre var at bruge en radio i stedet for en checkbox til ja/nej valget.
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.