Jag hör från fler och fler håll att utf-8 har så många fördelar och att det rekommenderas starkt i samband med xhtml. Vad är det som är så bra med det egentligen?
Fördelen med utf är att man kan blanda språk på samma sida utan att behöva joxa runt och konvertera vissa tecken till html-entiteter. Du kan blanda säg ryska, svenska och grekiska på samma sida genom att skriva texten precis som vanligt. Använder du t.ex. ISO-8859-1 går inte det utan att blanda in html-entiteter.
Det är inte någon unik kombination, xhtml och utf utan det gäller vanlig html (som du f.ö. levererar i ditt exempel), text-dokument osv osv också.
Hur ser du att haj.php har icke-unicode-tecken? Det funkar ju när jag includar den i php-källkoden (fält 2, den inkluderar exakt samma fil som ajaxen).
Alla filer är sparade som utf-8.
Om jag lägger in header("Contenttype bla bla utf-8") i haj.php så visar den rätt även med ajax men det borde ju inte behövas.
Vissa browsers är kinkigare än andra så man gör bäst i att inte ta till några små fulknep och tro att man kommer undan med det. Jag syftar inte på dig utan jag tänker i stort. :)
oskob skrev:
Hur ser du att haj.php har icke-unicode-tecken?
Jag öppnade helt enkelt haj.php i en ny sida i Opera och förde musen över dess flik. Opera visar vilken encoding sidan använder sig av och på din sida visades det ingen alls (haj.php alltså). Liknande funktionalitet finns även i Firefox men då måste man göra lite annorlunda, nämligen: Tools -> Page info (och så letar du upp encoding). Hur ska browsern då veta vilken den ska använda sig av?
oskob skrev:
Om jag lägger in header("Contenttype bla bla utf-8") i haj.php så visar den rätt även med ajax men det borde ju inte behövas.
M.h.a. Ajax skapar du en helt ny request, och encodingen som används på ursprungssidan kan ju vara en helt annan än den du får tillbaka från den nya requesten.
Man bör alltid ange encoding och helst via http headern (tycker jag).
Aha så det räcker inte med att spara filen i ett visst charset utan man måste berätta det i filen med header("Content-type: text/html; charset=utf-8"); eller <meta http-equiv="Content-type" content="text/html; charset=utf-8" />. Eller måste och måste. För att vara på den säkra sidan.
Trodde själva filen innehöll den informationen.
Man lär sig något nytt varje dag!
263 ms totalt · 4 externa anrop · v20260731065814-full.2f471f9e