webForumDet fria alternativet

Väldigt märkligt teckenkodningsproblem (På UTF-8 sajt)

HTML & CSS

1 svar · 263 visningar · startad av MickeA.com

Medlem sedan feb. 20034 441 inlägg
Frågan#1

Hej,

Har dykt på en hemskt konstig sak på en sajt, som bygger på JSP och har nån sorts svn system för versionshantering.

Sajten använder UTF-8 (det har den alltid gjort) och för en vecka sen blev det plötsligt strul med teckenkodningen.

När man lägger till dessa ord i någon av filerna:

Español
Русский
Português

..så blir dom helt fel i webbläsaren:

Español
Русский
Português

Det sjuka är som sagt att det är bara på det här stället det blir fel, alla övriga tecken ser rätt ut, både kodmässigt och i webbäsaren (visuellt). Något annat märkligt i sammanhanget är att det här är en testmiljö, i stage och i produktionsmiljö fungerar allt som det ska.

Servern kör Apache Tomcat, kan det vara så att Tomcat eller SVN är inblandad i det här?

Filen har alltid öppnats och sparats som UTF-8 och det ser "alltid" rätt ut när jag öppar filen för redigering, men resultatet i webbläsaren blir likt ovan.

Det som är riktigt konstigt är att sajten finns på alla dessa språk (Spanska, Ryska, Portugisiska) och alla tecken ser bra ut på alla ställen, utom just på det här ställen, som är vår språkväljare.

Öppnar jag filen i webbläsaren:

so.addVariable( "languagecount", "10" );
so.addVariable( "language1", "English|en_GB|n/a|javascript:setLanguage('en_GB');");
so.addVariable( "language2", "Suomi|fi_FI|n/a|javascript:setLanguage('fi_FI');");
so.addVariable( "language3", "Svenska|sv_SE|n/a|javascript:setLanguage('sv_SE');");
so.addVariable( "language4", "Polski|pl_PL|n/a|javascript:setLanguage('pl_PL');");  
so.addVariable( "language5", "Español|es_ES|n/a|javascript:setLanguage('es_ES');");
so.addVariable( "language6", "test åäö ÅÄÖ|zh_CN|n/a|javascript:setLanguage('zh_CN');");
so.addVariable( "language7", "Русский|ru_RU|n/a|javascript:setLanguage('ru_RU');");
so.addVariable( "language8", "Magyar|hu_HU|n/a|javascript:setLanguage('hu_HU');");
so.addVariable( "language9", "Português|pt_PT|n/a|javascript:setLanguage('pt_PT');");
so.addVariable( "language10", "Português|pt_BR|n/a|javascript:setLanguage('pt_BR');");

Allt rätt, men när jag sedan visar källa för den aktuella sidan:

so.addVariable( "languagecount", "10" );
so.addVariable( "language1", "English|en_GB|n/a|javascript:setLanguage('en_GB');");
so.addVariable( "language2", "Suomi|fi_FI|n/a|javascript:setLanguage('fi_FI');");
so.addVariable( "language3", "Svenska|sv_SE|n/a|javascript:setLanguage('sv_SE');");
so.addVariable( "language4", "Polski|pl_PL|n/a|javascript:setLanguage('pl_PL');");  
so.addVariable( "language5", "Español|es_ES|n/a|javascript:setLanguage('es_ES');");
so.addVariable( "language6", "Chinese|zh_CN|n/a|javascript:setLanguage('zh_CN');");
so.addVariable( "language7", "Русский|ru_RU|n/a|javascript:setLanguage('ru_RU');");
so.addVariable( "language8", "Magyar|hu_HU|n/a|javascript:setLanguage('hu_HU');");
so.addVariable( "language9", "Português|pt_PT|n/a|javascript:setLanguage('pt_PT');");
so.addVariable( "language10", "Português|pt_BR|n/a|javascript:setLanguage('pt_BR');");
Medlem sedan feb. 20034 441 inlägg
#2

Efter massa tester fram och tillbaka löste vi det tillslut. Sparade om filen som UTF-8 med BOM.

267 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)