Я знаю, что это может быть глупо, но как избежать пользовательского ввода, когда я показываю его в форме .Я не имею в виду какой-либо вывод, но особенно в форме ввода.Как, например, если у меня есть тег ввода и положить значение пользователя в значение.
<input type="text" value="'test' "test" <script>alert('hacked');</script>" />
Когда я оставляю это так, оно выглядит правильно
'test' "test" <script>alert('hacked');</script>
не происходит XSS, но я не чувствую себя защищенным, потому что с другим кодом он может в конечном итоге сломаться.Есть ли что-то вроде встроенных в браузер методов для предотвращения XSS при вводе данных в форму, или я что-то упускаю?
Редактировать: я не сказал всю историю.Извини за это.Когда я использую htmlentities
или htmlspecialchars
, я получаю экранированные данные, которые мне не нужны.Я вижу это на входе, а не то, что было введено: (
'test' "test" <script>alert('hacked');</script>
Я хочу запретить XSS и показывать содержимое, не изменяя его одновременно. Возможно ли это в этом случае. ![enter image description here](https://i.stack.imgur.com/9SglB.jpg)