Autor Zpráva
Waclaw
Profil *
Jde zamezit v IE6, aby skočil do quiru s nastavenou xml specifikací? Prostě, abych nemusel používat matrjošku. Nebo je důležitá specifikace xml? a taky by mě zajímalo, proč při zápisu:

<?xml version="1.0" encoding="iso-8859-2"?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
<meta http-equiv="Content-Language" content="cs" />
</head>
<body>...

Mně validátor vyhodí varování:
Character Encoding mismatch!
The character encoding specified in the HTTP header (utf-8) is different from the value in the XML declaration (iso-8859-2). I will use the value from the HTTP header (utf-8).

Moc díky za odpovědi
Joker
Profil
Jde zamezit v IE6, aby skočil do quiru s nastavenou xml specifikací?
Hmm, asi blbě

Nebo je důležitá specifikace xml?
Vůbec tam nemusí být, ale web by pak měl být v UTF kódování.

Character Encoding mismatch!
The character encoding specified in the HTTP header (utf-8) is different from the value in the XML declaration (iso-8859-2). I will use the value from the HTTP header (utf-8).

Ta hláška říká, že web v HTTP hlavičce content-type posílá UTF-8, zatímco v hlavičce webu je kódování ISO 8859-2.

Šlo by to řešit například takhle: soubor uložit v kódování UTF-8, charset v meta content-type přepsat na UTF-8 a XML deklaraci odstranit.
Chamurappi
Profil
Reaguji na Waclawa:
Užíváš-li MIME typ „text/html“, budou všechny prohlížeče XML deklaraci ignorovat (stejně jako všechny ostatní rysy charakteristické pro XHTML). Problémy samozřejmě nehrozí ani při použití jiných kódování než UTF-8/16, protože v HTML rozhoduje <meta> element. Jediné nebezpečí skýtá ten nesoulad HTTP hlavičky a <meta>.

Jestli nerozumíš hláškám W3C Validátoru, používej český.
Waclaw
Profil *
Joker
Šlo by to řešit například takhle: soubor uložit v kódování UTF-8, charset v meta content-type přepsat na UTF-8 a XML deklaraci odstranit.
Aha děkuji, to jsem netušil.

Ta hláška říká, že web v HTTP hlavičce content-type posílá UTF-8, zatímco v hlavičce webu je kódování ISO 8859-2.
Ano, to jse taky přeložil ale nechápu význam, jak je možné, že to posílá UTF, když mám v meta ISO. Je to potřeba posílat přes php?...

Chamurappi
Užíváš-li MIME typ „text/html“, budou všechny prohlížeče XML deklaraci ignorovat (stejně jako všechny ostatní rysy charakteristické pro XHTML).
Ano, samozřejmě znám tvoji logiku a aji s ní souhlasím, ale co zmůžu se zákazníky, kteří prostě nutně potřebují to "Nové super XHTML strict"?
Joker
Profil
Ano, to jse taky přeložil ale nechápu význam, jak je možné, že to posílá UTF, když mám v meta ISO.
To sice jo, ale HTTP hlavička content-type musí být nastavená už při přijetí souboru, takže dřív, než se může aplikovat meta content-type.
Dá se to buď přes header() v PHP, jinak server posílá nějakou výchozí, kterou má v nastavení.
Chamurappi
Profil
Reaguji na Waclawa:
Zákazníci vědí, že XML deklarace je při jiném kódování povinná? Nevědí. Oficiální validátor je na to neupozorní, protože sice užívá XML parser, ale kódování si je schopen vzít i z toho <meta> elementu.

co zmůžu se zákazníky, kteří prostě nutně potřebují to "Nové super XHTML strict"?
Co už jsi zkoušel? Zákazník si v problematice věří víc než ty?
Waclaw
Profil *
Joker
ok...rozumím...prostě přenastavit default charset...

Chamurappi
Zákazníci vědí, že XML deklarace je při jiném kódování povinná? Nevědí. Oficiální validátor je na to neupozorní, protože sice užívá XML parser, ale kódování si je schopen vzít i z toho <meta> elementu.
Toto řešení jsem také zvažoval, ale bál jsem se, že bude pak problém s kódováním. Jak psal Joker:
Vůbec tam nemusí být, ale web by pak měl být v UTF kódování.


Co už jsi zkoušel? Zákazník si v problematice věří víc než ty?
Neřekl bych, že by si věřil víc, ale prostě jeho přesvědčení, že když mu všichni radí, aby si to nechal udělat v xhtml, je dost velké a bylo by to asi na dlouho ho přesvědčit.
btw. ani třeba náš učitel vůbec nepřipouští nic takového, jako že by mohlo něco být na tom Chamurappim ...prostě XHTML je budocnost...
Miloš
Profil
Waclaw
ani třeba náš učitel vůbec nepřipouští nic takového … prostě XHTML je budocnost
Schválně se učitele zeptej, jak dlouho už ta budoucnost je, respektive kdy už přijde…
Waclaw
Profil *
Miloš
Ou...myslím, že by mi pak ty hodiny pěkně okořenil. :D
Chamurappi
Profil
Reaguji na Waclawa:
bál jsem se, že bude pak problém s kódováním
Nemůže být, protože XML deklarace v HTML neúčinkuje.
Joker ještě zapomněl doplnit, že XML deklarace není podle XHTML doporučení nikdy povinná, pokud kódování určuješ v HTTP hlavičce (což je tvůj případ).

když mu všichni radí, aby si to nechal udělat v xhtml
Ti „všichni“ tomu rozumějí? Ty jsi odborník, ty máš na starosti kód — jaké postupy používáš, to může být zákazníkovi ukradené, rozhodující je výsledek. Já také elektrikářům nekecám do toho, jakou barvu zakroucených provázků mají použít v zásuvce.

bylo by to asi na dlouho
Požádej ho, ať ti najde XHTML web, který projde českým validátorem :-)

ani třeba náš učitel vůbec nepřipouští nic takového, jako že by mohlo něco být na tom Chamurappim
On četl má slova? Copak hezkého o mně říká?

prostě XHTML je budocnost...
Možná. Ale rozhodně to není přítomnost.
Waclaw
Profil *
Chamurappi
Ti „všichni“ tomu rozumějí? Ty jsi odborník, ty máš na starosti kód — jaké postupy používáš, to může být zákazníkovi ukradené, rozhodující je výsledek. Já také elektrikářům nekecám do toho, jakou barvu zakroucených provázků mají použít v zásuvce.
Bohužel nerozumí, ale zatím všichni moji zákazníci dávali více na rady příbuzných, blízkých, kteří si někdy nechali dělat web, než na někoho cizího (já). Zkusím příště vytáhnot ten český validátor. ;)


On četl má slova? Copak hezkého o mně říká?
Hezkého? :D ...no, spíš odsekl s tím, že hold někdo zůstal u zastaralých metod.

Možná. Ale rozhodně to není přítomnost.
Bohužel, profesor je profesor.

Takže, abych to shrnul. V mém případě je nejmenší zlo neuvádět XML deklaraci. Ale zajímalo by mě, to všichni ti, co ji uvádí s win kódováním, musí používat matrjošky, nebo nějakých takových věcí?
Str4wberry
Profil
Waclaw
Ale zajímalo by mě, to všichni ti, co ji uvádí s win kódováním, musí používat matrjošky, nebo nějakých takových věcí?
Ti většinou na XML prolog kašlou. Ale někdy to také může být způsob, jak se přepnout do quirku.
Joker
Profil
Chamurappi
Joker ještě zapomněl doplnit, že XML deklarace není podle XHTML doporučení nikdy povinná, pokud kódování určuješ v HTTP hlavičce (což je tvůj případ).
To je pravda.
Ale zas vzhledem k tomu, že v HTTP hlavičce má jiné než skutečné kódování dokumentu mi to nepřijde úplně ideální.

Nicméně by to asi každopádně chtělo sjednotit, aby se posílalo všude správné kódování. A já osobně bych dal přednost UTF-8, podle mého názoru v současnosti není moc důvod používat něco jiného.
Waclaw
Profil *
Str4wberry
i většinou na XML prolog kašlou.
Právě mě zarazilo, že ani ne. Třeba Dero..atd

Joker
Nicméně by to asi každopádně chtělo sjednotit, aby se posílalo všude správné kódování. A já osobně bych dal přednost UTF-8, podle mého názoru v současnosti není moc důvod používat něco jiného.
Asi v příštím projektu. Bohužel u toho bych musel, nebo prostě bych měl problémy s mysql, kde je kodovani latin
Str4wberry
Profil
Waclaw
Právě mě zarazilo, že ani ne. Třeba Dero..atd
Protože druhá varianta v mém předešlém příspěvku.
Bubák
Profil
Prohlížeč Opera dává přednost Kódování uvedeném v HTTP hlavičce, takže takový mišmaš může udělat pěkný zmatek.
Na stránku jsem narazil náhodiu a jen jsem se díval, proč mi v Opeře blbne čeština.
http://www.vslesy.cz/ - zmršená stránka

Hláška validátoru:
Character Encoding mismatch!
The character encoding specified in the HTTP header (cp-1251) is different from the value in the XML declaration (windows-1250). I will use the value from the HTTP header (cp-1251).

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0