Problém s diakritikou v DB

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Sekyscz
Člen | 10
+
0
-

Ahoj, chci se zeptat … když uložím do databáze přes formulář například slovo „Jůůůva“ tak při výpisu to hodí tuhle hlášku

Nette\InvalidArgumentException

Component name must be non-empty alphanumeric string, ‚J???va‘ given.

V databázi je místo diakritiky ( ale né každé ) znak otazníku.
Používám Nette databázi. Předpokládám že je chyba v kódování,ale netuším kde to změnit … nevíte co s tím ? Děkuji

Editoval Sekyscz (25. 11. 2017 16:24)

Mysteria
Člen | 797
+
0
-

Nejspíše špatné kódování, použij UTF-8. Například:

CREATE TABLE `log` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `timestamp` datetime NOT NULL,
  `type` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `data` varchar(10000) COLLATE utf8_unicode_ci NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Zajímají tě části CHARSET=utf8 a COLLATE=utf8_unicode_ci. Případně jak v Admineru tak i PHPMyAdminu by to mělo jít změnit naklikáním někde ve změnách struktury tabulky.

Sekyscz
Člen | 10
+
0
-

aaaa už jsem na to kápl … moc děkuji :)

Editoval Sekyscz (25. 11. 2017 18:34)