Autor Zpráva
Daidalos
Profil
Ahoj všichni,

vím, že se to tu řešilo už několikrát, ale nic co by mne pomohlo jsem nenašel.
Teď k problému, mám MySQL databázi a PHP scripty.
V Mysql je nastavené všude (jak db, tak tabulka, tak řádky) kódování "utf8_czech_ci". Ve scriptech používám tento kód:
  
  mysql_query("SET NAMES utf8_czech_ci");
  mysql_query("SET character_set_connection=utf8_czech_ci");
  mysql_query("SET character_set_client=utf8_czech_ci");
  mysql_query("SET character_set_results=utf8_czech_ci");
  mysql_query("SET character_set_server=utf8_czech_ci");
  mysql_set_charset('utf-8',$connect);
Pokud data do databáze ukládám ze scriptu, tak se vypíší ve scriptu zase správně, ale v DB jsou uloženy dost podivuhodně "?lu?ou??k?" např. Pří výpisu zpět to funguje, říkal jsem si, nebudu to řešit.
Ale co je horší, pokud ukládám data přímo v DB s diakritikou, vypisují se ve scriptech špatně (naopak v DB jsou zas uložené správně). Už jsem si toho všiml dříve, a nikdy jsem neměl náladu to nějak řešit, ale zrovna teď mi to dost komplikuje práci.

Nevíte někdo o nějakém řešení? Dost by mi to pomohlo :)
Davex
Profil
Daidalos:
Jméno kódování je utf8 bez pomlčky. Viz Některé časteji řešené dotazy pro MySQL - FAQ » MySQL a čeština.
Daidalos
Profil
Pomohlo díky moc :)
Taková prkotina.. teď se cítím jako d...
juriad
Profil
A teď přijde ta těžší část zmigrovat všechna data, která byla uložena špatně...
A ponech jen ten první příkaz pro nastavení kódování (SET NAMES).

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: