Avatar billede medjeti Nybegynder
19. april 2002 - 17:10 Der er 9 kommentarer og
1 løsning

ASP + XML + Flash + Encoding = HJÆLP!!!

Hejsa

Jeg sidder med et meget genstridigt problem, som jeg håber nogen kan hjælpe mig med.

Jeg har en asp-side, der genererer en xml-streng ud fra et databaseudtræk (se Eksempel 1), som jeg så læser fra en Flash-movie. Så vidt, så godt - MEN så godt er det nu heller ikke.
Problemet er, at specialtegn (æ, ø, å osv.) får xml'en til at opføre sig mærkeligt.

Jeg har på samme site et asp-dokument der åbner en xml-fil, fjerner tabs og linieskift, og skriver resultatet ud så Flash-movien kan læse den (se Eksempel 2). Her har jeg sjovt nok ikke haft nogen problemer overhovedet - man skal blot sørge for at xml-dokumentet er UTF-8 encodet og starter med <?xml version="1.0" encoding="UTF-8"?>, så er man home free.

Jeg har naturligvis prøvet at sætte charset'et i mit asp-dokument til "UTF-8", og prøvet utallige kombinationer af Charset og ContentType, men ingenting hjælper.

Jeg har prøvet at gemme mit databaseudtræk i en tekstfil, og indholdet er nøjagtigt som det skal være - så jeg er ret sikker på at problemet ligger i ASP-sidens kodning / charset / whatever, men jeg har altså ikke kunnet fikse det på nogen måde.

Jeg er efterhånden klar til at kaste mig ud fra en høj bygning, så jeg vil sætte pris på ENHVER hjælp I måtte kunne yde.

På forhånd mange mange tak :)

- - - - - - -

Eksempel 1:
--------------------
<%
Response.Charset = "UTF-8"

strResult = [Læs xml fra fil]
strResult = [Fjern tabs og linieskift]

Response.Write strResult
%>

Eksempel 2:
--------------------
<%
Response.Charset = "UTF-8"

strResult = [Databaseudtræk]

Response.Write strResult
%>
Avatar billede medjeti Nybegynder
19. april 2002 - 17:12 #1
Ups, jeg fik byttet om på eksempel 1 og 2 - eksempel 1 er det der virker, og eksempel 2 er den der giver problemer.
Avatar billede excession Nybegynder
19. april 2002 - 17:15 #2
kan du ikke erstatte æ ø å med &aelig; &oslash; &aring; ?
Avatar billede medjeti Nybegynder
19. april 2002 - 17:42 #3
Joeh, det kunne jeg for så vidt godt, men det er jo mere symptombekæmpelse end det er en løsning på problemet. Desuden er mange andre "specialtegn" der potentielt kan give problemer i fremtiden, så det er ikke rigtig en langtidsholdbar løsning.
Men tak for inputtet alligevel :)
Avatar billede askhoej Praktikant
19. april 2002 - 17:45 #4
Modtager flashen XML'en som datasource eller hvordan?

Hva med at bruge CDATA omkring de latterlige bogstaver/tegn...
<MIT-XML-ELEMENT><![CDATA[Åøæ<>>>><<øæåøæå]]></MIT-XML-ELEMENT>
Avatar billede medjeti Nybegynder
19. april 2002 - 19:01 #5
Jeg modtager xml'en vha. xml.load. Jeg eksperimenterer lige lidt med CDATA, men det ser umiddelbart ikke ud til at gøre nogen forskel - jeg tror ikke det er i xml'en at fejlen opstår.
Jeg har prøvet at skrive mit output i en tekstfil, åbne tekstfilen igen og skrive indholdet ud, men det hjælper lige lidt.
Til gengæld kan jeg sagtens åbne tekstfilen fra Flash-movien og trække indholdet ud uden problemer. Mærkeligt...
Avatar billede medjeti Nybegynder
19. april 2002 - 19:23 #6
Mindre hijack: En anden løsning for mig kunne være at skrive mit output i en tekstfil, som jeg så åbner fra Flash-movien. Problemet er at databasen ligger på et andet domæne, så jeg kan ikke connecte til den direkte. Men så vidt jeg ved er det via Flash ikke muligt at åbne en tekstfil på et andet domæne. Hvis nogen har en workaround til det problem, så er det også en løsning.
Avatar billede askhoej Praktikant
19. april 2002 - 20:02 #7
Du kan lave en Web Service, som du kan kalde. Den kan så levere din tekst streng.
Avatar billede medjeti Nybegynder
20. april 2002 - 01:44 #8
Databasen er placeret på et domæne som jeg ingen kontrol har over. De har tilbudt at lave en asp-side, som laver database-udrtrækket for mig, og det er stort set den eneste mulighed jeg har, desværre...
Avatar billede medjeti Nybegynder
23. april 2002 - 15:39 #9
Well, det problem fik jeg ikke løst :(

Tak til dem der prøvede...
Avatar billede madsfoli Nybegynder
26. maj 2003 - 15:59 #10
Ved godt spørgsmålet er gammelt, men ville lige give mine 0.2$ alligevel. Har du husket at encode dit xml-output som Unicode? Det skulle kunne løse problemerne med specialtegn.

Og så kan jeg anbefale CDATA-tagget meget kraftigt. Gør det muligt at smide html-tags ind i tekst uden problemer.
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