Autor Zpráva
mimochodec
Profil
Dostal jsem se ke správě starého webu. Budu dělat novou verzi, teď bych ale potřeboval udělat pár zásahů do administrace a mám problém s diakritikou - co zadám do db, je tam správně, ale na stránce ne. Stránky mám v utf, v phpmyadminovi jsem našel stránku "Proměnné a nastavení serveru" a tam je character set = latin1. Netuším ale, kde to změnit. Není tady někdo, kdo by poradil?

Verze MySQL: 4.0.30-log
Verze MySQL klienta: 5.1.73 / phpMyAdmin - 2.11.11.3
Alphard
Profil
Omlouvám se za dezinformace, zde popsané chování platí až od verze 4.1, viz následující diskuse.

Znaková sada může být určená až pro každý sloupec samostatně, jde o to, jak je to nadefinované v dané databázi. Takže na začátek bych se podíval, jestli není v latin1 nacpaná čeština (což by nebylo dobré). Pro převod se (po zazálohování) používaly různé techniky, např. převod přes binární typ, ale lepší bude někde to najít. V rychlosti by se mohlo hodit tohle Převod kódování MySQL.

Pokud jsou data správně uložená v kódování podporujícím češtinu a správně se vše nastaví (souhrnně set names), nemělo by docházet k žádným problémům. Aktuální verze PMA je 4 něco, nevím co umí ta stará, použil bych Adminer, ten s češtinou umí pracovat zcela bez problémů. Verzi samotné MySQL radši nechám bez komentáře...
mimochodec
Profil
Alphard:
Takže na začátek bych se podíval, jestli není v latin1 nacpaná čeština

Tomu úplně nerozumím. Kde to zjistím?

To nastavení jednotlivého sloupce vypadá takto:


Takže opravdu netuším, kam sáhnout. Těch starých dat je tam jen jedna tabulka, já potřebuju přidat pár tabulek nových a ty stávající by mě nemusely moc zajímat, ale ani při přidávání nové tabulky nastavení kódování nevidím:
Kajman
Profil
mimochodec:

Podporu znakových sad umí až mysql od verze 4.1. Máte dřívější, tam jak data uložíte, tak je dostanete. PMA moc neznám, ale tuším, že tam kdysi bývala u přihlášení volba pro kódování. Tam zvolte kódování použité i pro stránky.
Alphard
Profil
mimochodec:
Tak to se vzhledem k [#4] Kajman omlouvám. Takto dávnou historii vývoje MySQL (roky 2002 a 2004) znám spíše teoreticky a myslel jsem si, že s podporou znakových sad přišla právě již 4.0. Můj příspěvek [#2] je pro vaši verzi MySQL zcela mimo.
mimochodec
Profil
Aha, díky oběma. Nějak se od toho odpíchnu.
mimochodec
Profil
Mám úplně jiný dotaz, ale týká se podobné situace, tak se přilepím sem.
Zase jsem se někde dostal k nějakému už běžícímu projektu a potřeboval bych se dostat k databázi. V rootu webu je config, ve kterém jsou potřebné údaje. Je tam mj. $dbHost = 'localhost'; Nevím, jakým způsobem se to spravovalo doteď, do rootu/pma jsem rozbalil PMA. Když se ale chci přihlásit, dostávám hlášku:

"Měli byste aktualizovat MySQL na verzi 5.5.0 nebo vyšší."

Nechci upgradovat mysql, ale chtěl bych downgradnout pma. Nedokážete z té hlášky někdo zjistit, jakou verzi mám hledat? Případně: když tam nahraju adminer, je pravděpodobnější, že starší mysql překousne?


ok, tak příště budu nejdřív zkoušet a pak psát. Nahrál jsem adminer a už jsem v databázi. Jen tak nějak zlobí kódování, ale to se doufám nějak poddá.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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

0