Zauważyłem, że zapisując jakiekolwiek polskie znaki do zmiennej cookie w JavaScript są one później nieprawidłowo interpretowane.
Niestety nawet funkcja escape(), a następnie unescape() nie pomaga.
Zamiast polskich znaków, w cookies znajdują się różne "dziwolągi"
Co gorsza dzieje się tak tylko w Firefox'ie. W IE wszystko jest w porządku.
Co ciekawe używająć escape() oraz unescape() może spowodować to error serwera!
Kod obrazujący problem:
- Kod: Zaznacz cały
<script type="text/javascript">
function pokaz()
{
alert("To jest ok: "+document.dane.nazwisko.value);
document.cookie = document.dane.nazwisko.value;
alert(document.cookie);
}
</script>
<form name='dane'>
Imię: <input value='±¶żł' id="nazwisko" type="text" />
<input type='button' value='potwierdz' onclick='pokaz();' />
</form>
Najlepsze jest to, że IE interpretuje trochę inaczej "±¶" niżeli Firefox w formularzu. W IE muszę w formularzu wpisać dokładnie "ąś", natomiast w Firefox TRZEBA wpisać '±¶', żeby pierwszy alert wywołał prawidłowy message...
Czy wie ktoś może jak rozwiązać ten problem, byłbym bardzo wdzięczny. W google nie mogę niczego znaleźć na ten temat. Pewnie dlatego, że na angielskich stronach nic o polskich znakach nie piszą
Pozdrawiam serdecznie,
Armon



