Ответ 1
Как отмечено, пробелы в URL-адресах недействительны. Большинство браузеров orlencode их автоматически. Однако...
На странице, на которую вы ссылаетесь, приведен пример с использованием слова "Günter" в разделе "Попробовать". Если слово "Günter" было отправлено как параметр querystring, это не сработало. поскольку "ü" не находится в стандартном наборе символов ASCII.
Он предназначен для использования, когда есть потенциально не-ASCII-символы. Примером может быть использование данных из базы данных для создания гиперссылки. Предположим, что код создает ссылку на страницу профиля пользователя. Unencoded, мой будет:
<a href="profile/?username=David Stratton">Your profile</a>
в то время как Günter будет
<a href="profile/?username=Günter">Your profile</a>
Моя, большинство браузеров могут справиться. Гюнтер, вероятно, нет.
Закодированные, это станет
<a href="profile/?username=David%20Stratton">Your profile</a>
и
<a href="profile/?username=G%FCnter">Your profile</a>
которые являются действительными URL-адресами.
(Пожалуйста, простите тот факт, что большинство хорошо продуманных систем не передадут имя пользователя в таком параметре. Это был всего лишь образец, чтобы прояснить концепцию.)