Ahoj všichni,
vím, že se na to všichni pořád ptáme, ale já už jsem vyzkoušel všechno možné a pořád v tom mám bordel - na svých stránkách www.starypsi-softball.com se mi kazí diakritika. V meta mám nastavený iso-8859-2 a v něm jsou ty stránky i psané a uložené (PSPad - tam jsem si to nastavil - u každé ručně zvlášť). Přesto to mám samý otazník. Stejná otázka platí na výpis z MySQL db, kde mám jako kódování databáze nastavené latin2 (tedy jak chápu obdobu iso) - taky je to samý otazníček.
Poradíte ?
Kdyby to tu už někdo psal, tak jen hoďte link...
Dík ;)
Pokud máš opravdu:
- text psaný v iso-8859-2 a nahráaný přes FTP
- meta tag v html s iso-8859-2
- správně data v db s collate iso-8859-2
Mělo by to zobrazovat správně.
Co jsem si na tvých stránkách všiml, tak správně se ti zobrazuje "ř", zatímco špatně "ž" a "š" (zároveň by ti mělo blbnout i "ť", ale to tam nikde nemáš).
Toto je příznak kolize mezi win-1250 a iso-8859-2. Takž se zkus ještě jednou podívat a ujisti se, že ty texty máš OPRAVDU uložené v iso.
Jo tak tu stránku, kde je "Vítejte na stránkách softballového týmu Starý psi !" máš jednoznačně napsanou ve win-1250. Zkus si v prohlížeči změnit kódování a uvidíš:
v IE: View | Encoding | Centra European (Windows)
v FF: Zobrazit | Znaková sada | Středoevropské jazyky (Windows-1250)
Vidím, funguje to tak. Ale mám ji skutečně napsanou v iso. Ověřoval jsem to různými konvertory a PSPadem. A Firwfoxí informace o stránce to taky tvrdí.
Tak dobře, to už by šlo. Asi jsem to měl blbě napsane v souborech. Ale teď řeší, stejný problém s výstupem z MySQL - mám tam všude nastaveno latin2-czech-cs - to by měla být obdoba isa, ne ?
já to mám takhle:
Jazyk: Czech (cs-utf-8)
Znaková sada: utf_unicode_ci
Prorovnávání: utf_unicode_ci
a stránky mi fachaj na iso-8859-2.
Pokud nejde o zastaralé dosovské kódování PC Latin 2 (o což asi nejde), tak jde určitě o ISO ;) Máš nastavený i jazyk připojení atd?
Těsně po připojení zkus něco na tenhle způsob (akorát že za utf8 dosadíš své kódování, hledej v manuálech mysql):
mysql_query('SET NAMES utf8');
mysql_query('SET CHARACTER_SET utf8');
Dík, zkusím. Dal jsem tedy celou db, tabulky i sloupce do utf8_unicode_ci a dělá to cosi pochybného. ěčřž jde ok, š píše otazník. do db se ukládají dívné znaky
Tak. Teď se mi to už dokonce do db ani neukládá :) tedy jen ty problémové znaky