Autor Zpráva
Seki
Profil
Zdravím,

máme mysql databázi, do které ukládáme faktury a jako kódování sloupců je utf8_czech_ci a v současnosti potřebujeme vygenerovat .dbf soubor s těmito daty. Jenže zde začíná problém s kódováním.... .dbf totiž potřebuje, aby data v ní byly v kódování Latin-2. Z nějakého důvodu se mi to stále nedaří převést. Zkoušel jsem: $string = iconv("utf-8", "iso-8859-2", $string);

Díky
Jan Tvrdík
Profil
Seki:
Ten kód je v pořádku a měl by fungovat. Vyhazuje ti to nějaké chyby? Pozor taky na to, že zdaleka ne všechny znaky z UTF-8 lze převést do iso-8859-2.
Kajman
Profil
Seki:
Nebo můžete říct po připojení přímo mysql, že chcete od ní data v latin2. Viz Některé časteji řešené dotazy pro MySQL - FAQ » MySQL a čeština

Problém, že latin2 je podmnožina unicode zůstává.
nightfish
Profil
Seki:
Pozor na to, že kódování Latin-2 může být buď ISO-8859-2 nebo CP852 (podle kontextu). Osobně pro generování DBF souborů, které potřebuju otevírat v DOSovém programu K602, používám $string = iconv('utf-8', 'CP852', $string);, kde $string je řetězec očištěný od znaků, které v CP852 neexistují.
Seki
Profil
nightfish [#4]:
Děkuju, ten tvůj postup funguje :) Ten pitomý účetní program to evidentně chce v tom CP852 :)

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: