Hola,
Como ha dicho, eso te lo hacen automaticamente algunos navegadores. Y es lo correcto. Hay que codificar los caracteres "extraños", segun esta definido en el protocolo.
Es mas, habria que usar la funcion urlencode() (
www.php.net/urlencode) o rawurlencode() (
www.php.net/rawurlencode), para los valores de los parametros.
Saludos.