Autor | Zpráva | ||
---|---|---|---|
clousseau Profil |
Ahoj,
už si nevím rady, obracím se proto s prosbou o pomoc. Zlobí mě zobrazování českých znaků - tedy vlastně i ukládání. MySQL databáze má kódování nastaveno na utf8_general_ci (zkoušeno i utf8_czech_ci), PHP a TPL soubory jsou uloženy v UTF-8 bez BOM, jazyk stránky nastaven na <meta http-equiv="Content-Type" content="text/html; charset=utf-8">, ale stejně po uložení dat se mi uloží text jako např. (PĹ™ĂvÄ›s velkĂ˝, škoda, Olejomalba na plátnÄ› - dĹ™evÄ›nĂ˝ rám 470x370mm...). Když poté zobrazím text na stránce, tak v podstatě až na pár znaků je čeština OK, ale např. ň se nezobrazí správně ale jako �?. Už fakt netuším, kde je pes zakopaný, poradíte prosím? Děkuji moc |
||
peta Profil |
Php header musis mit nastavene take na utf-8 a take mysql SET NAMES. Jakou mas verzi php a sql? Jake hlavicky posila server prohlizeci? (Bys mohl dat link na stranku)
|
||
Joker Profil |
#3 · Zasláno: 6. 3. 2014, 10:11:55
clousseau:
Ještě po připojení k databázi nastavte komunikační kódování. Viz MySQL a čeština. Jsou tři podstatné věci: 1. Kódování souboru se skriptem (nebo souborů, pokud jich je víc) 2. V jakém kódování o sobě stránka prohlásí, že je (hlavička content-type, případně meta charset) 3. Komunikační kódování s databází Všechno se týká samozřejmě jak vypisování, tak ukládání dat. Navíc jestli už nějaká data jsou v databázi uložená špatně, budou se muset opravit. |
||
clousseau Profil |
#4 · Zasláno: 6. 3. 2014, 10:18:19
Děkuji za nakopnutí,
zatím hodím link, kde je vidět špatné zobrazování: http://www.blesarna.cz/item.php?id=180 Hostuji u pipni, takže tam budou docela aktuální verze PHP i MySQL, ale jaké netuším, pokusím se zjistit |
||
peta Profil |
#5 · Zasláno: 6. 3. 2014, 10:55:17
http://manual.pipni.cz/read.php?id=73
http://manual.pipni.cz/read.php?id=19 verze PHP i MySQL - phpmyadmin by to mohl vypisovat. Jinak je to prikaz phpinfo(). |
||
clousseau Profil |
#6 · Zasláno: 6. 3. 2014, 12:29:07
Joker:
Díky moc, toto zabralo: mysql_set_charset("utf8"); (měl jsem tam původně mysql_query("SET NAMES 'UTF-8'");) Tedy až na to, že teď musím všechny data přepsat.:-D peta, taky děkuju |
||
peta Profil |
#7 · Zasláno: 6. 3. 2014, 12:38:55
To zalezi na tom, jakym zpusobem jsi to tam ulozil. Stejnym by to melo jit vybrat z db ve spravnem kodovani a pak tam nasoukat zpet v utf. Ale mozna rychlejsi to opravit rucne, pokud to je 100-200 zaznamu, nez zkoumat tuto moznost a napsat to spravne.
|
||
Joker Profil |
#8 · Zasláno: 6. 3. 2014, 12:39:11
clousseau:
To SET NAMES bylo správně, jen to není 'UTF-8' , ale 'utf8' .
|
||
clousseau Profil |
#9 · Zasláno: 6. 3. 2014, 15:55:35
Díky, nebylo toho tolik, tak jsem to udělal růčo, resp, copy paste
|
||
Časová prodleva: 10 let
|
0