Chybějící české znaky při výpisu z DB
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- fish
- Člen | 4
Zdravím,
zkoušel jsem rozběhat Nette s dibi podle návodu a vše šlo ok, ale při zobrazování dat z databáze se mi nezobrazují znaky s diakritikou a hází mi to warning:
Notice: iconv_strlen() [function.iconv-strlen]: Detected an illegal character in input string in ...\libs\Nette\String.php on line 169
Databázi mam MySQL, kódování normálně v UTF-8, tak nevím, kde je problém. Hledal jsem tady na fóru, jestli někdo neměl podobný problém, ale nenašel jsem.
Díky za rady, určitě jde o nějakou prkotinu :/
- Honza Kuchař
- Člen | 1662
https://doc.nette.org/…tils/strings můžeš používat jenom za předpokladu, že máš string v UTF-8. Takže asi máš v databázi data, která nejsou v UTF-8.
- Ondřej Mirtes
- Člen | 1536
Zkus do configu přidat řádek (uprav případně část před tečkou):
dibi.charset = "utf8";
Případně můžeš po připojení k DB zavolat dotaz
SET NAMES utf8
.