Autor Zpráva
loping
Profil *
dobrý den,

zkusím popsat svůj problém - ve finále je špatně uložen záznam (čeština) do databáze
-----------------------
- údaje které chci ukládat mám poslané v URL adrese

- otevřu databázi > mysql_query("SET NAMES 'utf8'"); > $zaznam="UPDATE stromy_novy DRUH='".$HTTP_GET_VARS['druh']."'...

- a uložim zaznam

soubor s php skriptem (kde jak ukladam, tak vytvarim novy zaznam) je uložen v UTF-8 ... databáze: (znakova sada připojení k MySQL - utf8_czech_ci ; Porovnání - utf8_czech_ci)

a stejne se mi zaznam spatne uloží - ještě v URL adrese je to vše správně - př. slovo "jiné" se po uložení změní na "jinĂ©"

...snad jsem to vše tak nějak popsal srozumitelně
pifko
Profil
Zkus si schvalne vyexportovat tu databazi (tabulku) v phpmyadmin jako sql soubor. Pak do nej mrkni, jestli u ty tabulky (tabulek) je CHARSET=utf8 a ne treba latin1. Pripadne to prepis na to utf8 a naimportuj zpatky. Nikde sem totiz v tom phpmyadmin nejakou moznost na zmenu kodovani neobjevil (i kdyz asi urcite nekde musi byt), tak sem to zatim vyresil takhle.
loping
Profil *
udělal jsem to a tabulka je "CHARSET=utf8" ... zkusil jsem to zpět naimportovat, ale pořád se nic nezměnilo
Leo
Profil
"ještě v URL adrese je to vše správně - př. slovo "jiné" se po uložení změní na "jinĂ©""

Jak to vite? Resp. v cem (v jakem programu) se vam objevi to "jiné""? Leo
pifko
Profil
To se me stavalo taky. Vlozis to treba v phpmyadmin, das si hned vypis a je to takhle zkomoleny. U me to bylo tim charsetem v tabulce
pifko
Profil
Zrejme tedy nebudes mit definovany utf8 v hlavicce:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
loping
Profil *
to Leo: přes URL pošlu slovo "jiné" ... když dám následně

echo $HTTP_GET_VARS['druh'];

-vytiskne se správně .. tj. "jiné"
-hned nato ukládám toto slovo do databáze .. nicméně tam je již problém s češtinou - když se kouknu do databáze - je to rozhozené


to pifko: když jsem vyzkoušel uložit záznam v phpmyadminu a natvrdo do něj napsat slovo "jiné" .. dal jsem následně výpis záznamu a vše bylo v pořádku
- utf8 mám nadefinovanou v souboru v sekci HEAD .. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
loping
Profil *
už jsem asi přišel čím to je - nicméně tak nějak pořád nevím, jak to "efektivně" spravit .. A VE SVÉ PODSTATĚ NEROZUMÍM PROČ TO TAK JE

.. problém je (snad to řeknu správně) v kódování stránky ve kterém mám celý skript .. v PSPADu mám nastaveno Formát > UTF-8

.. pokud vytvořím nový soubor a do něj dám skript, který mi nový záznam uloží a soubor bude mít nastavení Windows (CP1250), tak vše funguje .. přišel jsem na to náhodou - nicméně nechápu proč to nejde při nastavení stránky UTF-8 (kor kdyz, jak jsem rikal ve svem prvnim prispevku) mam vsechno (dle meho) potrebne nastaveno na UTF-8 (tj.
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- SET NAMES 'utf8'
- a formát souboru ve kterem je skript na UTF-8 (v pspadu Format > UTF-8)
zvěřiňák
Profil *
Petr Zajíc popisuje výborně tuhle problematiku na Linuxsoftu vtomhle článku. Pořádně to prostuduj i s následnou diskuzí. Já jsem s tímto problémem taky dlouho laboroval a po přečtení toho článku už mám ve všem jasno, všechno chodí jak má a není co řešit.
loping
Profil *
díky - musím říct, že vážně vševysvětlující článek :)
Laik894678
Profil *
pifko, moc díky :-)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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