Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: przekazywanie parametrów z 'polskimi literami'
Forum PHP.pl > Forum > PHP
m3141
wywołuję stronę tak:
http://www.poloniasantabarbara.com/coxpl.php?word=dość

zawartość strony coxpl.php:
<script>
function gup( name ){ name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); var regexS = "[\\?&]"+name+"=([^&#]*)"; var regex = new RegExp( regexS ); var results = regex.exec( window.location.href ); if( results == null ) return ""; else return results[1];}
word=gup('word');
alert(word);
</script>
<?php
echo $word;
?>

wynik pod IE:
alert: dość
nowa strona: dosc

wynik pod Firefox:
alert: do%C5%9B%C4%87
nowa strona: do&Aring;›Ä‡

Jak sobie z tym poradzić, by przekazana wartość parametru była właściwa (tzn. 'dość')?


adalgrim
urlencode
urldecode

lub jeśli nie jest ważne to co wyświetlasz w przeglądarce:
base64_encode
base64_decode

lub twórz przyjazny url tj. bez polskich liter i znaków specjalnych
m3141
Cytat(adalgrim @ 3.06.2010, 16:50:37 ) *
lub twórz przyjazny url tj. bez polskich liter i znaków specjalnych

Dzięki. Wprawdzie poradziłem sobie pisząc funkcję urlencode na piechotę, ale przyznaję, że jestem trochę niedouczony. To wynika z tego, że po raz pierwszy zetknąłem się z tym problemem wywołując w swojej aplikacji słownik języka polskiego, by pokazać znaczenie słowa w tekscie (onclick) napisanym po polsku.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.