Avatar billede beef12 Nybegynder
24. september 2007 - 08:45 Der er 11 kommentarer og
1 løsning

Cookies og specialtegn

Jeg har et problem når jeg henter en cookies værdi frem på mit website hvor ÅÆØ'er ikke vises korrekt.

Hvis jeg kigger i selve cookie'en, ser mit tegnsæt rigtigt ud, men når jeg assigner en værdi fra min cookie til en textbox fx:

userName.Text = Request.Cookies["pref"]["userName"];

Så vises værdierne (åæø og andre specialtegn) helt forkert.

Nogen der ved hvad der er galt?
Avatar billede erikjacobsen Ekspert
24. september 2007 - 09:51 #1
Det er noget vrøvl at skrive "ser mit tegnsæt rigtigt ud"  og "vises ... helt forkert"

Du ser altid disse æøå-tegn med et givet tegnsæt. Derfor kan man ikke bare slynge at det virker eller ikke virker. Det afhænger alene af hvilket tegnsæt der anvendes.

Derfor: hvilke tegnsæt ser du din tekst med i de 2 tilfælde?

Og svaret er næsten altid: i det ene tilfælde iso-8859-1 og i den andet utf-8. Hold dig til et tegnsæt hele vejen igennem.
Avatar billede beef12 Nybegynder
24. september 2007 - 10:36 #2
Ja det har du ret i - der skulle stå specialtegn i stedet for tegnsæt.

Jeg benytter utf-8 på websiden, så det burde ikke være problemet. Oder was?
Avatar billede erikjacobsen Ekspert
24. september 2007 - 10:45 #3
Det er da et meget fornuftigt valg. Så skal du bare sikre dig at du bruger utf-8 hele vejen igennem.
Avatar billede beef12 Nybegynder
24. september 2007 - 11:06 #4
Problemet er bare at mine specialtegn vises korrekt på websiden, i selve cookie-filen, men ikke TextBox'en når jeg hiver værdien op med følgende kode:

userName.Text = Request.Cookies["pref"]["userName"];

Så mit problem er stadig meget aktuel :-(
Avatar billede erikjacobsen Ekspert
24. september 2007 - 11:09 #5
Jamen, du kan ikke sige at den vises korrekt "i selve cookie-filen" uden at fortælle hvilket tegnsæt du ser den med.
Avatar billede beef12 Nybegynder
24. september 2007 - 13:51 #6
Jeg åbner jo cookie'n med notepad, så det er jo blot maskinens tegnsæt. Det er interessant er at websiden vises åæø forkert (ja nemlig forkert) når jeg bruger UTF-8. Jeg tillader mig at skrive "forkert", da vi nu godt ved hvordan åæø bør se ud i utf-8 - nemlig på samme måde som på eksperten.dk :-)
Avatar billede erikjacobsen Ekspert
24. september 2007 - 13:55 #7
Ja, hvis æøå er skrevet med iso-8859-1 og vises med utf-8, så ser det forkert ud. Men hvad er instillingen for tegnsæt for din notepad, som gør at den kan vise indholdet af din cookie-fil korrekt?
Avatar billede beef12 Nybegynder
24. september 2007 - 15:00 #8
De skrives og læses fra samme website - begge sider sider benytter utf-8. Det er nemlig det der er så mærkeligt :-)

Notepad er sat op til Western -> uanset hvad jeg skiftede det til vistes åæø korrekt.
Avatar billede erikjacobsen Ekspert
24. september 2007 - 15:09 #9
Det har (næsten) ikke noget med sagen at gøre om der står Western under skrifttype. Du skal kigge på hvilket tegnsæt, der bruges, når du åbner filen. Det handler i første omgang om at finde ud af hvilke tegnsæt der bruges hvor. Og det er du den eneste der kan. Notepad er ikke verdens bedste værktøj, men det her kan den godt, hvis man er omhyggelig.

Dernæst, hvis det viser sig at der er forskel, så skal vi kigge på hvor teksten kommer fra.
Avatar billede beef12 Nybegynder
24. september 2007 - 19:41 #10
Okay - jeg prøver at finkæmme al ind- og uddata. smid et svar.
Avatar billede erikjacobsen Ekspert
24. september 2007 - 20:16 #11
Jeg samler slet ikke på point, tak.
Avatar billede beef12 Nybegynder
25. september 2007 - 08:00 #12
Okay
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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