Autor Zpráva
peteo
Profil
dobrý deň,

ako nastaviť, aby data odosielané z formulára boli v UTF-8?
nakoľko užívatelia majú nastavené české či slovenské kódovanie, data sa odosielajú v patvare, kde je medzera nahradená tuším %20 a podobne nahradenia znakov.
Nakoľko mám vyhľadávanie nastavené na utf-8 (v php skripte, utf-8 je deklarované v hlavičke výstupnej stránky (i v ostatných stránkach webu)), potreboval by som, aby data boli odosielané v kódovaní utf-8.

poddotaz:

dá sa nejako zariadiť, aby sa prehliadač pri otvorení stránok nastavil (zobrazení/znaková sada) na utf-8?

Ďakujem
Nox
Profil
peteo:
Konverze na %20 není způsobená kódováním, to je úprava, aby bylo možné řetězec vložit do URL, takže tuším, že je formulář má method="get", případně tam atribut method není (pokud je to nastaveno na "post", data se nezobrazují v URL ... což nemusí být vždy výhoda, ale asi se tento způsob používá častěji)

V cílovém skriptu by měla být data v pořádku, pokud ne a nikde jinde nic nenajdeš, použij url_decode()
peteo
Profil
aha.

takže by malo stačiť (jedno alebo druhé?):

$dotaz = $_GET["dotaz"];
$dotaz = rawurldecode ($dotaz);

$dotaz = $_GET["dotaz"];
$dotaz = urldecode ($dotaz);

(dotaz je predávaná hodnota, ostatné znaky ma nezaujímajú)

ktoré je lepšie použiť?


ďakujem

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: