Zadejte hledaný výraz...

Prapodivná čeština v PHPMyAdmin

Zdravím, už začínám z nastavování češtiny šílet, prošel jsem hafo webů a nikde jsem nic co by můj problém vyřešilo nenašel. Mám problém s češtinou v PHPMyAdminu. Když skriptem vložím data do databáze, tak se místo českých textů v databázi objevují šílenosti jako třeba tohle:
4166726f64697a69616b612070726f2070c3a17279
44c3a16d736bc3a92070617266c3a96d792073206665726f6d6f6e79
Přitom, když si vypíšu data z databáze, tak jsou česky správně. V sloupcích tabulky je nastaveno kódování utf8_bin. Před vložením dat do tabulky mám nastavené:
SET NAMES 'utf8'
SET CHARACTER SET 'utf8'
SET collation_connection='utf8_czech_ci'
export databáze ukázal tohle (jen část):
-- Verze MySQL: 5.5.28a-MariaDB-log
-- Verze PHP: 5.3.20
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Struktura tabulky `openc_category_description`
--
CREATE TABLE IF NOT EXISTS `openc_category_description` (
`category_id` int(11) NOT NULL,
`language_id` int(11) NOT NULL,
`name` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',
`description` text COLLATE utf8_bin NOT NULL,
`meta_description` varchar(255) COLLATE utf8_bin NOT NULL,
`meta_keyword` varchar(255) COLLATE utf8_bin NOT NULL,
PRIMARY KEY (`category_id`,`language_id`),
KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
Nevíte co s tím?
6. 3. 2013 10:09:20
https://webtrh.cz/diskuse/prapodivna-cestina-v-phpmyadmin#reply874414
David Musil
verified
rating uzivatele
(69 hodnocení)
6. 3. 2013 10:38:36
Nejsem tedy expert na MySQL, ale proč máte sloupce jako utf8_bin, když collation_connection 'utf8_czech_ci'
Nebude problém v tomto?
6. 3. 2013 10:38:36
https://webtrh.cz/diskuse/prapodivna-cestina-v-phpmyadmin#reply874413
Jakub Loubal
verified
rating uzivatele
6. 3. 2013 10:59:06
utf8_bin by mela byt pricina potizi
6. 3. 2013 10:59:06
https://webtrh.cz/diskuse/prapodivna-cestina-v-phpmyadmin#reply874412
To by na to nemělo mít vliv, zkoušel jsem to i bez toho.
---------- Příspěvek doplněn 06.03.2013 v 11:23 ----------
No jo, ale nemůžu zasahovat do kódování (utf8_bin), nejedná se o mou db
6. 3. 2013 11:22:24
https://webtrh.cz/diskuse/prapodivna-cestina-v-phpmyadmin#reply874411
David Musil
verified
rating uzivatele
(69 hodnocení)
6. 3. 2013 11:27:39
Tak bych zkusil udelat novy tabulky a do nich nakopirovat data po zmene/pripadne zkusit, kdyz novym tabulkam a sloupcum nastavite utf-8_czech, tak jestli to bude fungovat
6. 3. 2013 11:27:39
https://webtrh.cz/diskuse/prapodivna-cestina-v-phpmyadmin#reply874410
Jakub Loubal
verified
rating uzivatele
6. 3. 2013 11:28:50
utf8_bin znamena, ze se ta data interpretuji BINarne. Ten tvuj retezec '4166726f64697a69616b612070726f2070c3a17279' interpretovany v UTF-8 zni takto: 'Afrodiziaka pro páry' ... tak bzch rekl, ze krom toho, ze data nesmyslne ukladas v BINaru, tak mas jeste zmrseny kodovani nekde jinde, pred praci s DBS
6. 3. 2013 11:28:50
https://webtrh.cz/diskuse/prapodivna-cestina-v-phpmyadmin#reply874409
Napsal Jakub Loubal;919155
utf8_bin znamena, ze se ta data interpretuji BINarne. Ten tvuj retezec '4166726f64697a69616b612070726f2070c3a17279' interpretovany v UTF-8 zni takto: 'Afrodiziaka pro páry' ... tak bzch rekl, ze krom toho, ze data nesmyslne ukladas v BINaru, tak mas jeste zmrseny kodovani nekde jinde, pred praci s DBS
No jo, ale kde? Data tahám z XML zdroje, který je UTF-8 a vše dál dělám jako UTF-8, asi to bude tím urf8_bin, ten ale měnit nemohu. Ono, jinak na webu to je plně čitelné, jen v tom PHPMyAdmin to vypadá blbě.
6. 3. 2013 11:43:38
https://webtrh.cz/diskuse/prapodivna-cestina-v-phpmyadmin#reply874408
Jakub Loubal
verified
rating uzivatele
6. 3. 2013 11:49:54
ze mas rozbity kodovani jinde beru zpet, ten preklad jsem delal z hlavy a "c3a1" je maly á. Ze ti PHPMyAdmin ukazuje data v BINaru je prave tim, ze kouka na tabulku, ktera ma nastaveny utf8_bin. Proste nastaveny ma porovnavat data BINarne, tak je PHPMyAdmin taky BINarne zobrazuje. Dela to co se po nem chce. V Aplikaci mas nastaveny u pripojeni k DBS utf8_czech_ci, tak ti data ukazuje lidsky citelny. Vic v tom nehledej ;)
6. 3. 2013 11:49:54
https://webtrh.cz/diskuse/prapodivna-cestina-v-phpmyadmin#reply874407
David Musil
verified
rating uzivatele
(69 hodnocení)
6. 3. 2013 11:50:03
Musí tam být někde chyba třeba ve skriptu, když to zapisuješ do DB... normálně můžeš mít v DB plnohodnotnou diakritiku.
-- Opraveno, příspěvek neplatí :) --
6. 3. 2013 11:50:03
https://webtrh.cz/diskuse/prapodivna-cestina-v-phpmyadmin#reply874406
Napsal Jakub Loubal;919174
ze mas rozbity kodovani jinde beru zpet, ten preklad jsem delal z hlavy a "c3a1" je maly á. Ze ti PHPMyAdmin ukazuje data v BINaru je prave tim, ze kouka na tabulku, ktera ma nastaveny utf8_bin. Proste nastaveny ma porovnavat data BINarne, tak je PHPMyAdmin taky BINarne zobrazuje. Dela to co se po nem chce. V Aplikaci mas nastaveny u pripojeni k DBS utf8_czech_ci, tak ti data ukazuje lidsky citelny. Vic v tom nehledej ;)
JJ, máš pravdu, díky za vysvětlení :-)
6. 3. 2013 11:54:52
https://webtrh.cz/diskuse/prapodivna-cestina-v-phpmyadmin#reply874405
Pro odpověď se přihlašte.
Přihlásit