Ejem... ejem... ya que estamos en el foro de PHP y para que el tema no se aleje tanto, puedes usar
urlencode() y
urldecode() para asegurarte de que los caracteres especiales se convierten correctamente.
lo mejor es que sigas las recomendaciones de kaninox (sin caracteres especiales, ni espacios y en minusculas).
Un abrazo,