Avatar billede dingodas Nybegynder
16. december 2005 - 09:26 Der er 16 kommentarer og
1 løsning

Periodisk fejl i udskrift af danske bogstaver

Æ,Ø og Å udskrives ikke ALTID korrekt, når de kommer fra et dynamisk link(querystring). Der linkes til min side fra et overordnet intranet, som er købt 'ude i byen'. Uden påviselig grund, udskrives bogstaverne rigtigt en gang imellem. Der er ikke ændret i koden.
Jeg har prøvet forskellige metoder med codepage:
1.  <%@language=VBScript CODEPAGE=1252%>
2.  Session.CodePage = 1252

Jeg har prøvet replace:
  periodenavn1 = replace(periodenavn1, "æ", "&aelig;")
  periodenavn1 = replace(periodenavn1, "ø", "&oslash;")
  periodenavn1 = replace(periodenavn1, "å", "&aring;")
  periodenavn1 = replace(periodenavn1, "Æ", "&AElig;")
  periodenavn1 = replace(periodenavn1, "Ø", "&Oslash;")
  periodenavn1 = replace(periodenavn1, "Å", "&Aring;")

Jeg har prøvet:
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

Jeg har prøvet forskellige kombinationer og dem alle samtidig.

Kan min kode løse opgaven eller skal *synderen' findes i det overordnede system, hvorfra der linkes?.

Det vil være dejligt at holde jul uden det at spekulere på.
Kan nogen hjælpe mig ?
Avatar billede dingodas Nybegynder
16. december 2005 - 15:09 #1
Under eksperimenter med replace, finder den ikke bogstaverne Æ, Ø, Å og kan derfor heller ikke 'replace'. Der skrives f.eks. Ã…bent i stedet for Åbent. Hvad kan man ellers søge på ved replace.
Hvordan forøger man pointallet til 60 ??
Avatar billede saudoo Nybegynder
17. december 2005 - 11:59 #2
Under funktioner. ;)

Kører du med en dansk eller udenlandsk server? Altså mht. opsætning. :)

Du kunne jo alternativt bruge Server.HTMLencode... den erstatter bare alle specialtegn, og så skal du lave replaces på dem, du ikke vil have formateret.
Avatar billede dingodas Nybegynder
17. december 2005 - 20:02 #3
Jeg kører med dansk server.
Det mystiske er, at det virker en gang i mellem. Tekst fra databasen skrives korrekt ud, når jeg husker 'Session.CodePage = 1252'
Server.HTMLencode... kender jeg ikke, men det kan jeg vel lære.
Avatar billede saudoo Nybegynder
17. december 2005 - 22:03 #4
Ja det er en smule spøjst. :)
Server.HTMLencode, virker som en funktion.. du skriver bare det således..

Response.Write Server.HTMLencode("din tekst, eller variabel")

Og så konverterer den alle specialtegn om til.. ja, tegnkoder.


Jeg må indrømme at jeg nok ikke kan hjælpe dig med det andet. Det kunne være så meget. :) Men du kunne jo prøve dig med HTMLencode.. ;)
Avatar billede dingodas Nybegynder
17. december 2005 - 23:58 #5
Det prøver jeg på mandag - foreløbig tak.
Avatar billede dingodas Nybegynder
19. december 2005 - 09:37 #6
Desværre hjalp Server.HTMLencode ikke.
Avatar billede dingodas Nybegynder
19. december 2005 - 09:53 #7
Findes der en udskriftsmetode, så jeg kan se hvilken værdi jeg skal søge på, når jeg bruger replace ?
Avatar billede saudoo Nybegynder
19. december 2005 - 16:52 #8
Du mener et register der viser hvilke koder giver hvilke tegen?
Avatar billede dingodas Nybegynder
19. december 2005 - 18:34 #9
Det kan også være en mulighed, men jeg tænker på at få vist hvilken aktuel værdi mine bogstaverne har i variablen, når de kommer ud af min querystring. Hvis jeg kender værdien, kan jeg bruge replace. Hvis jeg bruger Response.Write "ÆØÅ" vises bogstaverne korrekt.
Avatar billede saudoo Nybegynder
19. december 2005 - 18:50 #10
Det kan du vel bare tjekke ved at udskrive dem, og se kildekoden derefter?? Tror ikke helt jeg forstår hvad det er du vil?.. :)
Avatar billede dingodas Nybegynder
19. december 2005 - 21:42 #11
Undskyld - problemet har kværnet i hovedet på mig så længe, at jeg har glemt at andre ikke automatisk tænker de samme tanker som mig.
Hvis linket indeholder f.eks. Å ser det sådan ud, når jeg udskriver det: Ã…
Hvis, jeg i replace, søger efter Å eller Ã…, er der ingen match. Derfor er jeg interesseret i at vide, hvad jeg så skal søge på for at få match. Kan man, i en testudskrift, få vist ASCII-, hex-, decimal- eller en helt anden værdi, som kan bruges til at søge med i replace ?
Håber at det hjalp på forståelsen.
Avatar billede saudoo Nybegynder
19. december 2005 - 22:52 #12
Oh, så det er specialtegn, i en QueryString??
Avatar billede saudoo Nybegynder
19. december 2005 - 22:56 #13
I såfald kan du istedet bruge Server.UrlEncode..

Eksempel:

<a href="<% = Server.UrlEncode("http://www.domæne.dk/å-gård/øl og andet godt.htm") %>">Eksempel</a>
Avatar billede dingodas Nybegynder
21. december 2005 - 14:36 #14
Det overordnede intranetsystem tillader ikke at skrive linket med Server.UrlEncode. Jeg har spurgt leverandøren om årsagen til, at de danske bogstaver ikke vises korrekt, når de kommer i berøring med deres system. Det er der ikke kommet svar på, og jeg holder juleferie nu. Endnu en gang tak for dine forslag til at afhjælpe problemet. Glædelig jul og godt nytår.
Avatar billede saudoo Nybegynder
21. december 2005 - 14:47 #15
I lige måde tak. :)
Avatar billede dingodas Nybegynder
07. november 2009 - 17:36 #16
Jeg har været ude af cirkulation, men er nu ved at rydde op.
Avatar billede dingodas Nybegynder
07. november 2009 - 17:50 #17
Det er desværre ikke længere muligt at tildele point.
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