ÆØÅ

Tags:    html css website

Hey! Jeg har et stort problem, min side godtager ikke Æ Ø og Å? Hvad gør jeg? Det virker i min index.html men ikke i contact.html?



5 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 18 karma
Sorter efter stemmer Sorter efter dato
Problemet er forkert tegnsæt.

Der findes forskellige tegnsæt - de to mest udbredte i den vestlige verden er UTF8 og Latin-1 (ISO-8859-1).

Forskellen er at Latin1 er et singlebyte charset der bruger de 256 første unicode værdier. UTF8 har en variabel byte længde og kan repræsentere alle unicode værdier i alle verdens gængse alfabeter.

I engelsk brødtekst vil man sjældent opdage at noget bliver læst med et andet tegnsæt, da de 128 første værdier tegn (0-127) er det samme i Latin1 og UTF8 (De har begge adopteret ASCII standarden). De sidste 128 tegn (128-255) er forskellige, da Latin1 stadig bruger singlebyte og UTF8 går over til multibyte (2 bytes per tegn).

æ, ø og å ligger alle i den sidste halvdel - og derfor opstår der konflikter hvis man ikke er konsekvent med tegnsættet.

Så hvis du har tekst der er UTF8 encoded, som bliver læst som Latin1, så vil du få to underlige tegn istedet. Hvis du har en Latin1 tekst som bliver læst som UTF8 så vil du få ét underligt tegn istedet for.

Bonus info: Hvorfor kunne UTF8 ikke bare også være singlebyte? En byte består af 8 bit, som hver har 2 forskellige værdier - 0 eller 1. Hvor mange kombinationer af et byte findes der så? 2^8 - 256 - altså tallene 0 til 255. Det passer perfekt til ISO-8859-1. UTF8 indeholder dog alle verdens mest gængse tegn og har derfor brug for den ekstra plads.

I UTF8 specifikationen er den maksimale længde der er defineret 4 bytes - altså (2^8)^4.

Der findes et væld af andre tegnsæt. UTF7, UTF9, UTF16, Mac OS Roman, ISO-8859-X (x 1 til 15 or so - for forskellige dele af verden, primært europæiske, arabiske og russiske sprog) og et væld af asiatiske variationer.

....

Der er massere at skrive Daniel ;-)

Hvis man leder efter den rigtige måde at gøre tingene på, så vil jeg give følgende anbefaling: Når i arbejder med webprojekter så hold jer til UTF8 og Unix-style linefeeds (\n som linebreak ikke \cr eller \cr\lf). De fleste editors lader jer vælge disse indstillinger, og hvis i er konsekvente vil det én gang for alle gøre livet nemmere for jer. *

*: Udover lige standard installationer af MySQL og PHP i et linux miljø, som skal slås lidt oven i hovedet før det vil acceptere UTF8 som standard charset.

p.s. charset udtales "khar-sæt" direkte oversat til dansk-lyd-skrift-agtigt - IKKE tjarsæt... :-)

edit: typo



Indlæg senest redigeret d. 11.03.2012 13:24 af Bruger #17015
Kan du evt. poste noget kode, så vi kan se hvad du har gjort? :)

EDIT:
Jeg har flere gange løst problemet med følgende kode-stump
Fold kodeboks ind/udHTML kode 




Indlæg senest redigeret d. 19.02.2012 01:06 af Bruger #16678
Det virkede! Tusind gange tak for det. Du burde lave en artikel om det, så får i ikke så mange spørgsmål :)



Der er sgu ikke så meget at skrive om :)



Tja, Men vidste måske kun 50% af det dér.

Man kunne sikkert få en fin artikel ud af emnet, enten har jeg ikke tiden, ellers er jeg bare doven ;)



t