Ответ 1
Возможно ли это для веб-сайта пользователя? браузер для переопределения кодировки utf8 заголовок и отправить не-UTF8?
Конечно. Вы не контролируете клиента, и клиент может делать все, что захочет, в том числе позволяет пользователям переопределять обычные кодировки и вызывать нежелательный (или передаваемый для нежелательной почты) для отправки на ваш сервер.
Тем не менее, похоже, что вы предприняли здесь самые важные шаги. Ваш фактический HTML-документ является кодировкой UTF-8 и явно помечен как таковой, что означает, что браузеры обычно по умолчанию также отправляют формы в эту кодировку. (Обратите внимание, что спецификация HTML не требует этого. Указание accept-charset в форме явно является единственной гарантией соответствия спецификации.) я что это будет работать так, как ожидалось, во всех современных браузерах, и вы можете легко проверить это.
На сервере ваша работа всегда должна проверять ваш ввод в той степени, в которой это важно для вашей службы. Хотя подавляющее большинство ваших пользователей будет доброжелательным и с использованием современных стандартных браузеров, HTTP-протокол открыт, и обе дурацкие пользователи и злонамеренные хакеры там, и оба могут бросать любые данные, которые они хотят на вас. Убедитесь, что вы не делаете предположений о кодировании данных, когда речь идет о безопасности или проверенных данных, и дезинфицируйте этот материал, прежде чем вставлять его в базы данных.