webForumDet fria alternativet

CDONTS fuckar upp åäö i ämnesraden

ASP

25 svar · 3 353 visningar · startad av saturday

Medlem sedan jan. 2007133 inlägg
Frågan#1

Har ett script som skickar ett meddelande så här:

HTML = "<!DOCTYPE HTML PUBLIC""-//W3C//DTD XHTML 1.0 Transitional//EN"">"
HTML = HTML & "<html>"
HTML = HTML & "<head>"
HTML = HTML & "<meta http-equiv=""Content-Type"""
HTML = HTML & "content=""text/html; ISO-8859-1"">"
HTML = HTML & "</head>"
HTML = HTML & "<body bgcolor=""FFFFFF"">"
HTML = HTML & messege & more
HTML = HTML & "</body>"
HTML = HTML & "</html>"
subject = myname & " önskelista - från GameStop"

myMail.MailFormat = cdoMailFormatMIME
myMail.From="santa@gamestop.com"
myMail.To="namn@gamestop.com"
myMail.Subject=subject
myMail.BodyFormat=0
myMail.MailFormat=0
myMail.Body=HTML
myMail.Send
set mymail=nothing
Response.Write "Message Sent"

Meddlandet skicas fint. Å, ä och ö skickas som det ska i bodyn. Men åäö fuckar upp sig i ämnesraden. Har googlat febrilt, utan att finna någon lösning som fungerar.

Har provat att spara dokumentet i utf-8 samt västerländsk plus att byta ut alla encodings därefter, utan resultat.

Rubriken skrivs ut så här när det kommer till inkorgen:
Skriv ditt namn önskelista - från GameStop

Någon som har en lösning?

Medlem sedan aug. 20068 090 inlägg
#2

Ingen teknisk lösning men funkar till 100% och löser problemet på 15 sekunder:
Byt texten till "wishlist hos gamestop" eller "julklappslista hos gamestop"

Medlem sedan jan. 2007133 inlägg
#3

Som du ser vill jag ha med namnet på den som skriver i ämnesraden, vad händer om den som skickar heter "Göran". Den hårdkodade texten är ju ok. Men namnet kan ju variera.

Så jag söker fortfarande en lösning...

Danne V skrev:

Ingen teknisk lösning men funkar till 100% och löser problemet på 15 sekunder:
Byt texten till "wishlist hos gamestop" eller "julklappslista hos gamestop"

Medlem sedan aug. 20068 090 inlägg
#4

Hur ser källkoden i själva mailet ut?
Funkar å, ä och ö i ämnesraden i andra mail i samma epostklient?
Går det genom en databas? Vad har den i så fall för kollationering?
Hur skickas mailet? Hur ser skriptet ut?
(Har alltså själv noll koll på asp. Men om folk ska kunna hjälpa så brukar det vara bra med liknande uppgifter)

Medlem sedan jan. 2007133 inlägg
#5

Danne V skrev:

Hur ser källkoden i själva mailet ut?

Är inte med på vad du menar? Texten i rubriken för mailet ser du i koden ovan.

Funkar å, ä och ö i ämnesraden i andra mail i samma epostklient?

Ja, det är inga fel på min epostklient som tar emot mailet. Det är Outlook för Mac.

Går det genom en databas? Vad har den i så fall för kollationering?

Nej, det går ej via en databas utan fångas bara upp från ett formulär. Skriver jag ut texten i html-dokumentet så blir alla åäö rätt. Som de blir i även bodyn för mailet. Det är som sagt endast ämnesraden som får detta problem.

Hur skickas mailet? Hur ser skriptet ut?

Scriptet finns i min första post ovan. Men jag kan göra en förenklad version där jag förklarar:

Bygger upp variabeln HTML som blir källkoden för mailet

HTML = "<!DOCTYPE HTML PUBLIC""-//W3C//DTD XHTML 1.0 Transitional//EN"">"
HTML = HTML & "<html>"
HTML = HTML & "<head>"
HTML = HTML & "<meta http-equiv=""Content-Type"""
HTML = HTML & "content=""text/html; ISO-8859-1"">"
HTML = HTML & "</head>"
HTML = HTML & "<body bgcolor=""FFFFFF"">"
HTML = HTML & "Hej på din Göran"
HTML = HTML & "</body>"
HTML = HTML & "</html>"

Variabeln som innehåller texten till ämnesraden

subject = "Min önskelista - från GameStop"

Sätter lite fler värden till mailet och skickar

myMail.MailFormat = cdoMailFormatMIME
myMail.From="santa@gamestop.com"
myMail.To="namn@gamestop.com"
myMail.Subject=subject
myMail.BodyFormat=0
myMail.MailFormat=0
myMail.Body=HTML
myMail.Send
set mymail=nothing
Response.Write "Message Sent"

(Har alltså själv noll koll på asp. Men om folk ska kunna hjälpa så brukar det vara bra med liknande uppgifter)

Medlem sedan aug. 20068 090 inlägg
#6

saturday skrev:

Scriptet finns i min första post ovan. Men jag kan göra en förenklad version där jag förklarar:

Hmm... är det där verkligen skriptet som skickar mailen? Jag kan som sagt nada om asp, men för mig ser det snarare ut som en slags konfigurationsfil.

Självka skriptet verkar ju heta "myMail"? Är det inte där du ska titta?

Medlem sedan juni 20006 022 inlägg
#7

Testa att byta ut:

subject = myname & " önskelista - från GameStop"

Till:

subject = Server.HTMLEncode(myname & " önskelista - från GameStop")
Medlem sedan jan. 2007133 inlägg
#8

Quid skrev:

Testa att byta ut:

subject = myname & " önskelista - från GameStop"

Till:

subject = Server.HTMLEncode(myname & " önskelista - från GameStop")

Då kom detta i ämnesraden:
önskelista - från GameStop

Frågan är om detta kan vara något server relaterat?
Jag kör en Windows 2008 server. Smtp'n är igång och jag kör ju då CDONTS som komponent till detta. Kan det vara något i detta som inte tar åäö?

Medlem sedan juni 200032 967 inlägg
#9

Varför använder du inte CDO istället? CDONTS är uråldrigt (det är visserligen ASP också, men det är en annan femma.)

CDO ersatte CDONTS för länge sedan.

Medlem sedan jan. 2007133 inlägg
#10

@nders skrev:

Varför använder du inte CDO istället? CDONTS är uråldrigt (det är visserligen ASP också, men det är en annan femma.)

CDO ersatte CDONTS för länge sedan.

Kan prova, vet du vart jag laddar ned och installerar rätt komponent till Windows 2008 server? Gärna med en installationsguide.

Googlar lite själv och ser om jag kan hitta något, men skrik gärna till om du vet något.

Medlem sedan juni 200032 967 inlägg
#11

CDO ingår väl i Windows?

Medlem sedan juni 200032 967 inlägg
#12

Kolla sista inlägget här, och testa:
http://forums.iis.net/t/1150855.aspx

Medlem sedan jan. 2007133 inlägg
#13

@nders skrev:

Kolla sista inlägget här, och testa:
http://forums.iis.net/t/1150855.aspx

Är inte riktigt med på detta. Dessa inlägg verkar ju handla om att de får fel när de använder CDONTS. Det får ju inte jag, dvs, mina mail skickas ju som det ska. Det är ju bara åäö som inte ser ut som de ska?

Medlem sedan juni 200032 967 inlägg
#14

Om man läser så ser man att sista inlägget handlar om hur man får CDO att funka i Windows 2008 - verkar som att många har problem med just det.

I CDO finns vackra properties man kan sätta för att bli av med teckenkodningsproblem i ärenderaden.

Medlem sedan jan. 2007133 inlägg
#15

@nders skrev:

Om man läser så ser man att sista inlägget handlar om hur man får CDO att funka i Windows 2008 - verkar som att många har problem med just det.

I CDO finns vackra properties man kan sätta för att bli av med teckenkodningsproblem i ärenderaden.

Lyckades ladda ned och installera CDO.

Körde detta scriptet som test:

<%
   Set MailRegister = CreateObject("CDO.Message")
   MailRegister.To = "Neil <jborg@gamestop.com>"
   MailRegister.From = "Neil <myemailaddress@hotmail.com>" 
   MailRegister.Subject = "a test subject åöä"
  
   MailRegister.TextBody  = "test"

   MailRegister.Send
   Set MailRegister = Nothing 
   %>

Ämnesraden som kom fram:
a test subject åöä

Medlem sedan juni 200032 967 inlägg
#16

Prova att lägga till detta:

MailRegister.BodyPart.Charset = "utf-8"
Medlem sedan jan. 2007133 inlägg
#17

@nders skrev:

Prova att lägga till detta:

MailRegister.BodyPart.Charset = "utf-8"

Provade det, samma resultat. :( Dessutom prövade jag med åäö i mailet också:
test åäö

blev resultatet.

Så här ser scriptet ut nu:

<%
   Set MailRegister = CreateObject("CDO.Message")
   MailRegister.BodyPart.Charset = "utf-8"
   MailRegister.To = "Neil <jborg@gamestop.com>"
   MailRegister.From = "Neil <myemailaddress@hotmail.com>" 
   MailRegister.Subject = "a test subject åöä"
  
   MailRegister.TextBody  = "test åäö"

   MailRegister.Send
   Set MailRegister = Nothing 
   %>
Medlem sedan juni 200032 967 inlägg
#18

Är asp-filen sparad i UTF-8-format?
Annars, prova med ISO-8859-1 som charset istället.

Medlem sedan jan. 2007133 inlägg
#19

@nders skrev:

Är asp-filen sparad i UTF-8-format?
Annars, prova med ISO-8859-1 som charset istället.

Japp, filen är sparad i UTF-8.

Prövade med:
MailRegister.BodyPart.Charset = "ISO-8859-1"

Men outputen är exakt den samma.

Är det någon skum inställning jag måste fixa i smtp servern?

Medlem sedan juni 200032 967 inlägg
#20

Åh, vad onödigt. :(

Då har jag tyvärr inga fler uppslag. Prova en googling som den här och se om du kan finna något som kan hjälpa dig på traven:

http://www.google.se/search?q=cdo+charset+problem&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:sv-SE:official&client=firefox-a

mvh

263 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)