29. december 2020 - 17:31Der er
3 kommentarer og 1 løsning
Udfordringer med at sende igennem jMail (gammel kode skal tilpasses)
Hej
Jeg har fundet noget gammelt kode frem fra gemmerne der er cirka 15 år.
Jeg vil gerne tilrette denne kode, så jeg kan sende igennem jMail på mit webhotel med det, som det kræver i dag.
Jeg kan imidlertid ikke gennemskue hvordan, at jeg får angivet portnummer til udgående SMTP-server, samt brugernavn og adgangskode til e-mailadressen der sendes fra.
Min kode ser således ud: <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <% 'Felterne i formen modtages og gemmes i variabler navn = Request.Form("navn") email = Request.Form("email") emne = Request.Form("emne") besked = Request.Form("skriv din besked/kommentar her")
'Der tjekkes om e-mail adressen er korrekt IF (instr(email,"@") = false) OR (instr(email,".") = false) THEN %> <SCRIPT LANGUAGE=JavaScript> alert("Feltet e-mail adresse er ikke udfyldt, skriv en e-mail adresse!") history.back(); </SCRIPT> <% ELSE 'Hvis den er korrekt udføres følgende 'Jmail komponentet der findes på serveren startes nu Set objMail = Server.CreateObject("JMail.Message") objMail.Silent = True 'Her sættes afsender til den værdi der var indtastet i e-mail form feltet objMail.FromName = "Navn" ' Afsendernavn kan være alt objMail.From = "mail@mitdomaene.dk" ' En gyldig afsender e-mail adresse 'Her skal du indtaste den e-mail adresse der skal modtage mailsne objMail.AddRecipient "modtager@mitdomaene.dk", "Modtagerens Navn" 'Her sættes emne til den værdi der var indtastet i emne form feltet objMail.Subject ="Emne"
'Her sættes besked til den værdi der var indtastet i besked form feltet objMail.Body = besked
'Her sendes mailen gennem udgående smtp-server objMail.Send("websmtp.simply.com")
%> <SCRIPT LANGUAGE=JavaScript> alert("Mailen er nu sendt til webmasteren!") </SCRIPT> <% END IF %> Jeg vil blive glad for hvis nogen har en løsning :-).
Jeg har nu rettet koden til, men der kommer ingen e-mails igennem fra jMail. Mit gæt er, at der mangler en fra-adresse ét eller andet sted.
Min nye kode ser således ud: <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <% 'Felterne i formen modtages og gemmes i variabler navn = Request.Form("navn") email = Request.Form("email") emne = Request.Form("emne") besked = Request.Form("skriv din besked/kommentar her")
'Der tjekkes om e-mail adressen er korrekt IF (instr(email,"@") = false) OR (instr(email,".") = false) THEN %> <SCRIPT LANGUAGE=JavaScript> alert("Feltet e-mail adresse er ikke udfyldt, skriv en e-mail adresse!") history.back(); </SCRIPT> <% ELSE 'Hvis den er korrekt udføres følgende 'Jmail komponentet der findes på serveren startes nu Set objMail = Server.CreateObject("JMail.Message") objMail.Silent = True 'Her sættes afsender til den værdi der var indtastet i e-mail form feltet objMail.From = email ' En gyldig afsender e-mail adresse 'Her sættes navn til den værdi der var indtastet i navn form feltet ObjMail.FromName = navn 'Her skal du indtaste den e-mail adresse der skal modtage mailsne objMail.AddRecipient "test@mitdomaene.dk", "Modtagerens Navn" 'Her sættes emne til den værdi der var indtastet i emne form feltet ObjMail.Subject = emne
'Her sættes besked til den værdi der var indtastet i besked form feltet objMail.Body = besked
'Her sendes mailen gennem websmtp.simply.com objMail.Send("websmtp.simply.com:587") objMail.MailServerUserName = "minmail@mitdomaene.dk" objMail.MailServerPassword = "xxx" Set objMail = Nothing %> <SCRIPT LANGUAGE=JavaScript> alert("Mailen er nu sendt til webmasteren!") location.href("side.asp?id=19") </SCRIPT> <% END IF %> --- Nogle som kan gennemskue hvad der går galt her?
Jeg har som sagt Googlet mig rundt på Internettet, men det er for mig temmelig udfordrende at finde oplysninger om brug af jMail.
Ja, koden er temmelig gammel - dette skyldes, at jeg i mange år ikke har arbejdet med ASP, men PHP. Nu er jeg så begyndt at kigge lidt på ASP igen.
Nu har jeg fået jMail til at fungere, så der logges ind rigtigt, plus at der samtidig vises en fejlbesked, hvis jMail ikke kan sende e-mails.
Koden er følgende i filen sendmail.asp: <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <% 'Felterne i formen modtages og gemmes i variabler navn = Request.Form("navn") email = Request.Form("email") emne = Request.Form("emne") besked = Request.Form("skriv din besked/kommentar her")
'Der tjekkes om e-mail adressen er korrekt IF (instr(email,"@") = false) OR (instr(email,".") = false) THEN %> <SCRIPT LANGUAGE=JavaScript> alert("Feltet e-mail adresse er ikke udfyldt, skriv en e-mail adresse!") history.back(); </SCRIPT> <% ELSE 'Hvis den er korrekt udføres følgende 'Jmail komponentet der findes på serveren startes nu Set JMail = Server.CreateObject("JMail.Message") JMail.Logging = true JMail.Silent = True JMail.AddHeader "Originating-IP", Request.ServerVariables("REMOTE_ADDR") JMail.ISOEncodeHeaders = False JMail.ContentTransferEncoding = "8bit" 'Her sættes afsender til den værdi der var indtastet i e-mail form feltet JMail.From = email 'Her sættes navn til den værdi der var indtastet i navn form feltet JMail.FromName = navn 'Her skal du indtaste den e-mail adresse der skal modtage mailsne JMail.AddRecipient "anders@boholdt-petersen.dk" 'Her sættes emne til den værdi der var indtastet i emne form feltet JMail.Subject = emne
'Her sættes besked til den værdi der var indtastet i besked form feltet JMail.Body = besked
'Her sendes mailen gennem websmtp.simply.com JMail.MailServerUserName = "user_name_to_e-mail_account" JMail.MailServerPassWord = "password_to_your_e-mail_account" If jMail.Send("websmtp.simply.com:587") Then Response.Write "Afsendt." Else Response.Write "Der opstod en fejl: " & objMail.Log End If jMail.close Set jMail = Nothing %> <SCRIPT LANGUAGE=JavaScript> alert("Mailen er nu sendt til webmasteren!") </SCRIPT> <% END IF %> ---
Takker for løsningsforslagene. Rigtig god dag.
Mvh Anders.
Synes godt om
Ny brugerNybegynder
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.