Они действительны, но мне кажется вполне нормальным, что если вы попросите язык программирования url кодировать строку, то он преобразует все не алфавитно-цифровые символы в шестнадцатеричный эквивалент.
ASP.Server.URLEncode () делает то же самое, и php urlencode () делает то же самое, за исключением - и _. Кроме того, в javascript функция encodeURIComponent () будет кодировать все не алфавитно-цифровые символы в шестнадцатеричные эквиваленты.
В любом случае, это хорошая идея - кодировать все не буквенно-цифровые символы при использовании пользовательского ввода для формирования запросов к серверу, чтобы предотвратить непредвиденное.