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ě
imploder
Profil
je soubor se skriptem taky v utf-8?
loping
Profil *
právě že ANO - v tom jednom souboru vytvařim položky, ktere potom posílám JS fcí "document.location" do URL ... tím vlastně reloadnu stránku ... pak mám již v PHP podmínku IF(jsou data) { ulož do databáze } .. ale tam je to již špatně
imploder
Profil
loping
.. ale tam je to již špatně
Je to špatně nejenom v databázi, ale i když skript ty data normálně vypíše (ne z databáze, z toho co dostal v URL). Znaky s diakritikou se v URL převádějí na takové ty znaky entity s procentem, možná je problém v tom. Pokud to skript bere přímo z URL (a ne z nějaké proměnné), je potřeba ty entity převést zpátky funkcí urldecode().
loping
Profil *
myslím, že v tom problém nebude - já když dám vypsat

echo $HTTP_GET_VARS['druh']; .. tak mi to vypíše bezproblému slovo "jiné"

avšak následné uložení do DB je již problém
loping
Profil *
už jsem asi přišel čím to je - nicméně tak nějak pořád nevím, jak to "efektivně" spravit

.. 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
- a formát souboru ve kterem je skript na UTF-8 (v pspadu Format > UTF-8)

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: