Этого не должно быть, и хотя вы можете исправить это вручную с помощью urldecode () ing, вы, вероятно, будете прятать основную ошибку в другом месте, которая может появиться позже и укусить вас.
Хотя при отправке формы с использованием типа содержимого по умолчанию 'application / x-www-form-encoded' значения внутри нее кодируются в URL (% xx), PHP отменяет это для вас, когда делает значения доступными в массиве $ _POST [].
Если после этого вы все еще получаете нежелательные последовательности% xx, должен существовать еще один уровень ручного кодирования URL, которого там быть не должно. Вам нужно найти где это. Если это скрытое поле, может быть, страница, которая его генерирует, случайно кодирует его, используя urlencode () вместо htmlspecialchars (), или что-то еще? Размещение некоторого примера кода в Интернете может помочь нам узнать.