Avatar billede syngre.net-team Nybegynder
22. december 2003 - 02:02 Der er 18 kommentarer og
2 løsninger

JMail sammen med HTML

Hejsa

Jeg benytter mig af JMail til at få sendt en form for "enbefal hjemmeside" mails ud, hvor man kan sende til en ven.

Den sender en mail med ét link, problemet er bare at den ikke vil lave det om til ét link, synes selv jeg har prøvet et par muligheder nu, måske du kan ??


Koden:

<% Response.Buffer = True

redirect_to = Request.Form("redirect_to")
send_til = Request.Form("send_til")
from = Request.Form("from")
emne = Request.Form("emne")
note = Request.Form("note")

Set Mail = Server.CreateObject("Persits.MailSender")
Mail.Host = "mai.mail.dk"
Mail.From = "anbefal@anbefal.dk"
Mail.FromName = from
Mail.AddAddress send_til
Mail.AddReplyTo send_til
Mail.Subject = "Prøv lige at tjekke det her ud..."

body = ""
body = body & "Hejsa..." & vbCrLf & vbCrlF
body = body & "En af dine venner har valgt at sende dig denne anbefaling fra xxx's hjemmeside..." & vbCrLf
body = body & "Hvis du vil læse mere, kan du gøre det her: http://www.xxx.dk/" & vbCrLf & vbCrlF
body = body & "Tak for din interresse for xxx..." & vbCrLf & vbCrLf
body = body & "Bemærkning fra din ven:" & vbCrlf & note & vbCrlf & vbCrlf & vbCrlf
body = body & "Du kan IKKE besvare denne e-mail !" & vbCrLf

Mail.Body = body
Mail.Send
Set Mail = Nothing

Response.Redirect redirect_to
%>

KODEN SLUTTER HER ---------------->

I stedet for at linket bare står som en tekst ( Linien: body = body & "Hvis du vil læse mere, kan du gøre det her: http://www.xxx.dk/" & vbCrLf & vbCrlF ) vil jeg gerne have gjort at den mail som modtageren får at det er muligt at klikke på dette link. Altså at jeg sender denne mail som en HTML mail, og benytter dette link:
<a href=http://cliche.parameter.dk/click/3a10679133dbab77277426a3905d073a>Klik her</a> Hvis man kan få det ind i på en måde?


Mvh.
S

NB. Har lukket spørgsmål: /spm/442697 --> Da det gik i vollapyk :-)
Avatar billede eagleeye Praktikant
22. december 2003 - 08:42 #1
PRøv at skrive det som et html link med <a href sådan her:


body = body & "Hvis du vil læse mere, kan du gøre det her: <a href=""http://www.xxx.dk/"">http://www.xxx.dk/</a>" & vbCrLf & vbCrlF
Avatar billede trumf Nybegynder
22. december 2003 - 09:51 #2
Det er fint som eagleeye skriver, men mellem linierne Set Mail = Server.CreateObject("Persits.MailSender") og Mail.Host = "mai.mail.dk" skal du indsætte Mail.ContentType = "text/html"

altså:
Set Mail = Server.CreateObject("Persits.MailSender")
Mail.ContentType = "text/html"
Mail.Host = "mai.mail.dk"
Derved ændrer ændrer du mailformatet fra ascii til html og så kan du skrive alt det html i mailen du vil

Der er dog enkelte der ikke kan modtage html, men det er efterhånden et fåtal, da både MS og NS osv understøtter html.
Avatar billede syngre.net-team Nybegynder
22. december 2003 - 18:39 #3
Nu ser filen sådan her ud, og jeg får en fejl når jeg prøver at sende nu :(

<% Response.Buffer = True

redirect_to = Request.Form("redirect_to")
send_til = Request.Form("send_til")
from = Request.Form("from")
emne = Request.Form("emne")
note = Request.Form("note")

Set Mail = Server.CreateObject("Persits.MailSender")
Mail.ContentType = "text/html"
Mail.Host = "mail3.cliche.dk"
Mail.From = "anbefal@domæne.dk"
Mail.FromName = from
Mail.AddAddress send_til
Mail.AddReplyTo send_til
Mail.Subject = "Prøv lige at tjekke det her ud..."

body = ""
body = body & "Hejsa..." & vbCrLf & vbCrlF
body = body & "En af dine venner har valgt at sende dig denne anbefaling fra Hvidovre Kajakklub's hjemmeside..." & vbCrLf
body = body & "Hvis du vil læse mere, kan du gøre det her: <a href=""http://www.eksperten.dk/"">http://www.eksperten.dk/</a>" & vbCrLf & vbCrlF
body = body & "Tak for din interresse for Eksperten.dk..." & vbCrLf & vbCrLf
body = body & "Bemærkning fra din ven:" & vbCrlf & note & vbCrlf & vbCrlf & vbCrlf
body = body & "Du kan IKKE besvare denne e-mail !" & vbCrLf

Mail.Body = body
Mail.Send
Set Mail = Nothing

Response.Redirect redirect_to
%>
Avatar billede syngre.net-team Nybegynder
22. december 2003 - 18:40 #4
Det ser ud til at være rettet rigtigt, men kan ik rigtigt få det til at virke..
Avatar billede eagleeye Praktikant
22. december 2003 - 19:20 #5
Får du ikke et link i mailen eller står det som ren tekst??
Det ser rigtig nok ud
Avatar billede syngre.net-team Nybegynder
22. december 2003 - 19:34 #6
Så snart jeg trykker på Send får jeg én internfejl Nr. 500-Serverfejl i IE
Avatar billede eagleeye Praktikant
23. december 2003 - 00:07 #7
Det lyder ukke godt.. Du skulle gerne få en bedre fejl kode/beskrivelse ved at slå denne fra i IE:
funktioner -> internetindstillinger -> avanceret -> fjern kryds i "vis meddelelse om uskadelige http-fejl"
Avatar billede eagleeye Praktikant
23. december 2003 - 00:09 #8
Hvis du bruger ASPMail så har jeg set at den vil hvade både et navn og en email adresse i AddAddress selvom den ifølge dokumentationen kan nøjes med email adressen. Så prøv at skrive et tomt navn eller et navn..:

Mail.AddAddress "", send_til
Avatar billede syngre.net-team Nybegynder
23. december 2003 - 02:10 #9
eagleeye --> Det kryds er alleredet fjernet i min IE, men den giver mig stadig ik andet end en fejl 500... Men vil da lige prøve "Mail.AddAddress "", send_til" så
Avatar billede syngre.net-team Nybegynder
23. december 2003 - 02:14 #10
Virker ik, får stadig kun fejl 500
Avatar billede syngre.net-team Nybegynder
23. december 2003 - 02:18 #11
Jeg prøvede lige at sætte den gamle kode ind, for at se om det var min udbyders JMail som evt. var nede... Men det virker fint, og får den anbefalet e-mail på under 10 sec.

Koden på den gamle som virker ser sådan her ud:

<% Response.Buffer = True

redirect_to = Request.Form("redirect_to")
send_til = Request.Form("send_til")
from = Request.Form("from")
emne = Request.Form("emne")
note = Request.Form("note")

Set Mail = Server.CreateObject("Persits.MailSender")
Mail.Host = "mail3.cliche.dk"
Mail.From = "postmaster@hvidovrekajakklub.dk"
Mail.FromName = from
Mail.AddAddress send_til
Mail.AddReplyTo send_til
Mail.Subject = "Prøv lige at tjekke det her ud..."

body = ""
body = body & "Hejsa..." & vbCrLf & vbCrlF
body = body & "En af dine venner har valgt at sende dig denne anbefaling fra Hvidovre Kajakklub's hjemmeside..." & vbCrLf
body = body & "Tak for din interresse for Hvidovre Kajakklub..." & vbCrLf & vbCrLf
body = body & "Bemærkning fra din ven:" & vbCrlf & note & vbCrlf & vbCrlf & vbCrlf
body = body & "Du kan IKKE besvare denne e-mail !" & vbCrLf

Mail.Body = body
Mail.Send
Set Mail = Nothing

Response.Redirect redirect_to
%>

Men her er linket fjernet som jeg meget gerne ville have ind i denne mail, derudover er sætningen Mail.ContentType = "text/html" også fjernet
Avatar billede eagleeye Praktikant
23. december 2003 - 10:24 #12
Øh du bruger ikke JMail, det kode du har er til ASPEmail.
Har du prøvet det jeg forslog og uden det med ContentType ??
Avatar billede eagleeye Praktikant
23. december 2003 - 10:27 #13
Ok, det så navnet til sidst:
Ger er et eksempel på hvordan det skal se ud, og det gælder også fra AddReplyTo:

Mail.AddAddress "jsmith@company1.com", "John Smith"


ContentType bruges kun af JMail hvis du vil sætte HTML mail for ASPEmail så hedder den IsHTML:
Mail.IsHTML = True


Alt det plus meget mere kan du også se i manualen ;)
http://www.aspemail.com/Manual.htm

Får du bare en felj.500 uden noget som helt felj kode?
Avatar billede syngre.net-team Nybegynder
23. december 2003 - 22:49 #14
Ahhh, der kan man jo bare se --> Mail.IsHTML = True den hjalp og det virker nu, næsten som det skal...

Et sidste spørgsmål.. Hvordan går jeg den til at lave linieskift i koden nu, før brugte jeg f.eks. vbCrlf & vbCrlf og har også prøvet med <br> nu men det virker ikke?

/Peter --> Mange julehilsner
Avatar billede ellebaek Nybegynder
23. december 2003 - 22:51 #15
hvis du benytter <br>
skal det være imellem " " tegnene...
Det virker hvis du kan benytte html i dine mails.!
Avatar billede syngre.net-team Nybegynder
23. december 2003 - 23:07 #16
Prøvet, men virker ikke...

F.eks.:
body = body & "Du kan IKKE besvare denne e-mail !" & vbCrLf "<br>"
---> Det sidste er BR, og den giver en fejl 500 ( intern på serveren )

F.eks.:
body = body & "Hejsa... <br>" & vbCrLf & vbCrlF
---> Virker heller ikke, men denne mail bliver sendt...

Måske de ik tillader det på deres server måske ?
Avatar billede ellebaek Nybegynder
23. december 2003 - 23:09 #17
det er fordi du mangler en &
body = body & "Du kan IKKE besvare denne e-mail !" & vbCrLf & "<br>"

Men det burde virke med:
body = body & "Du kan IKKE besvare denne e-mail ! <br>"
Avatar billede eagleeye Praktikant
23. december 2003 - 23:30 #18
Som ellebeak skrive så skulle det virker hvis du skriver <br> som du har vist i stidste eks.:
body = body & "Hejsa... <br>" & vbCrLf & vbCrlF

Jeg undre mig lidt over virker linket kun hvis du har sat .IsHTML = True ???
Avatar billede syngre.net-team Nybegynder
23. december 2003 - 23:31 #19
ellebaek ---> Mange tak for hjælpen, og det virker jo fint nu... Takker og rigtig glædelig jul :-)

/Peter
Avatar billede ellebaek Nybegynder
23. december 2003 - 23:32 #20
Tak i lige måde...

..Ellebæk!
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