erik_persson wrote:I princip ska det räcka med det du anger. I varje fall så länge du inte också har en meta-tag som anger någon annan teckenkodning. Om en sådan finns så kan nog lite vad som helst hända beroende på vilken browser som används.
Du kan alltid testa att lägga in en meta-tag också, som i så fall ska se ut enligt:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
men jag tror inte det är det som är felet.
Du har gjort ett par fel.
1) xml-deklarationen ska föregå root-elementet, dvs inte stå efter html-tagen, och
2) en xml-deklaration har formen
<?xml version="1.0" encoding="utf-8"?>
Observera det sista "?".
Ändrar du detta så misstänker jag att det kommer att fungera.
/erik
Tack så mycket för hjälpen!
Det fungerar dock fortfarande inte riktigt som jag vill. Jag har nu lagt till xml-deklarationen korrekt före root-elementet i html-koden som genereras i php-filerna. Html-koden innehåller också metataggen i head-elementet som du beskrev ovan. Utöver det skickar samtliga php-filer charset med headerfunktionen. Nu hamnar jag i den spännande situationen att delar av mina sidor kodas rätt medan andra inte gör det. Dessutom varierar vilka delar som kodas rätt över tid. Antagligen beror detta på hur webbsidorna genereras:
sidhuvud, body och sidfot genreras av metoder i ett CHTMLPage-objekt som jag skrivit. Sidhuvud och sidfot är statiska och definierade i sina respektive metoder medan bodyn är dynamisk och skapas för respektive sida för att sedan skickas till printBody-metoden som argument. I nuläget blir antingen body eller sidhuvud OCH sidfot rätt kodade, vilken kombination det blir varierar som sagt mellan besöken på sidan.
Kan det bli problem om man försöker spec:a teckenkodning på olika ställen som jag angett ovan?
Jag har testat
Code: Select all
print_r(apache_response_headers());
vilket returnerar
Code: Select all
Array ( [X-Powered-By] => PHP/5.2.0-8+etch13 [Content-typ] => text/html; charset=UTF-8 )
vilket väl borde vara ett gott tecken? Dock säger sidinfo i Firefox fortfarande iso-8859-1 trots att vissa delar av sidan kodas korrekt....
Såna här problem får mig att alltid att undra varför nån vill köra något annat än UTF-8....
/Lars