Autor Zpráva
el.el
Profil *
Zdravím,

mám problém s diakritikou v DB.

Web som vytvoril na 1 hostingu spolu s databázou. Do jednej z tabuliek som importoval dáta v CSV formáte v kódovaní windows-1250. Web aj databáza je v kódovaní UTF-8.
Na tomto pôvodnom hostingu je všetko v poriadku.

Následne som chcel spustiť web naostro, na doméne ktorá je na inom hostingu. Spravil som export na pôvodnom hostingu cez PhpMyAdmin v UTF-8 a následne import na novom hostingu takisto v UTF-8.

Keď však zobrazím web, diakritika je nanič. Skúšal som viaceré kombinácie exportu a importu (windows-1250 a UTF-8) ale nič nepomohlo. Prečítal som zopár tém tu na fóre, ale nie som z toho múdrejší.

Vopred vďaka za každú radu.
lionel messi
Profil
el.el:
V PHP ti string prekóduje funkcia iconv, staré záznamy od nových odlíšiť vieš (napr. pomocou id). S podobným problémom som laboroval aj ja pred asi mesiacom, nič nepomáhalo, tak som na to na úrovni MySQL rezignoval a pomocou zmienenej funkcie prekódoval v PHP.
el.el
Profil *
Ďakujem za rýchlu reakciu.

Použil som iconv, (Windows-1250 do UTF-8), napr. "š" alebo "ý" je už OK, ale "č" alebo "ň" nie.
mimochodec
Profil
el.el:
Je to špatně už v databázi, nebo se to kazí až při zobrazení na webu?
el.el
Profil *
mimochodec:
Keď pozerám texty v DB cez PhpMyAdmin, tak sú aj na pôvodnom aj na novom hostingu v poriadku. Nečitateľné je to len na webe na novom hostingu.
lionel messi
Profil
el.el:
Nastavuješ po pripojení k db kódovanie? Akým spôsobom? Pomocou mysql_set_charset alebo mysql_query("SET NAMES")?
Marschmallow
Profil
el.el:
V databázi jsou uložené jako windows-1250 a v phpmyadmin se zobrazují správně? A po vypsání webu špatně? Zkus soubor (kam vypisuješ) uložit jako UTF-8, ale i windows-1250.
el.el
Profil *
lionel messi:
Obrovská vďaka. Použil som mysqli_set_charset a vyzerá že všetko funguje tak ako má. Ešte raz ďakujem.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0