Zadejte hledaný výraz...

Kódování: Databáze v latin1_swedish_ci, skripty v utf-8

3CK
verified
rating uzivatele
(2 hodnocení)
15. 11. 2016 17:38:41
Zdravím, nějak se mi nedaří rozlousknout následující věc, snad mi tady někdo poradí.
Mám starou databázi, která používá "latin1_swedish_ci" (nemohu změnit):
CREATE TABLE `zadani` (
...
`specifikace` varchar(30) NOT NULL DEFAULT '',
...
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Dále mám veškeré skripty v UTF-8 (včetně odesílání php hlavičky, metatagu atd.). K databází se připojuji:
$db = new MySQLi(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
...tedy nenastavuji žádné CHARACTER SET, COLLATION ani COLLATION_CONNECTION. Zkoušel jsem to, ale stejně se mi to nepodařilo rozchodit.
Pokud z databáze vytáhnu sloupec "specifikace" a vypíšu ho, čeština je v tom zmrvená. Zkušel jsem všechny následující funkce, ale bez úspěchu:
utf8_encode($string);
iconv('ISO-8859-1', 'UTF-8', $string);
mb_convert_encoding($string, 'UTF-8', 'ISO-8859-1');
Nějaká rada, nápad nebo popostrčení na co mrknout? Díky!
15. 11. 2016 17:38:41
https://webtrh.cz/diskuse/kodovani-databaze-v-latin1_swedish_ci-skripty-v-utf-8#reply1237333
hm
verified
rating uzivatele
(20 hodnocení)
15. 11. 2016 18:54:52
$db->set_charset("utf8")
pro jistotu muzes zavolat i dotaz 'set names UTF-8;'
to by melo stacit, tohel ti nefungovalo?
15. 11. 2016 18:54:52
https://webtrh.cz/diskuse/kodovani-databaze-v-latin1_swedish_ci-skripty-v-utf-8#reply1237332
3CK
verified
rating uzivatele
(2 hodnocení)
17. 11. 2016 12:38:21
Bohužel ani tohle nefunguje.
Bude tam nějaký větší problém s kódováním - když si databázi otevřu přes Adminer, tak tam taky čeština není ok. Text "obj. č.:" se zobrazuje jako "obj. ?.:". To ale asi moc nepomůže co?
17. 11. 2016 12:38:21
https://webtrh.cz/diskuse/kodovani-databaze-v-latin1_swedish_ci-skripty-v-utf-8#reply1237331
tak pokud to mas spatne ulozeny v dtb tak to asi nevytahnes v poradku.
17. 11. 2016 22:59:34
https://webtrh.cz/diskuse/kodovani-databaze-v-latin1_swedish_ci-skripty-v-utf-8#reply1237330
3CK
verified
rating uzivatele
(2 hodnocení)
18. 11. 2016 00:09:02
Nevím, co považuješ za "špatně uložené v dtb", ale původní části aplikace, které byly psány současně s databází, a které jsou v cp1250 (a u spojení s databází se kódování vůbec neřeší), pracují s databází a diakritikou bez problémů (ukládání, editace, zobrazování na webu).
18. 11. 2016 00:09:02
https://webtrh.cz/diskuse/kodovani-databaze-v-latin1_swedish_ci-skripty-v-utf-8#reply1237329
Pro odpověď se přihlašte.
Přihlásit