PHP-阻止攻击者在inputbox中使用javascript

PHP-阻止攻击者在inputbox中使用javascript,javascript,php,html,htmlspecialchars,Javascript,Php,Html,Htmlspecialchars,就像我们使用htmlspecialchars来避免html标记作为输入一样 同样,我们是否也可以使用任何函数或方法来避免javascript htmlspecialchars不处理脚本标记 有什么建议吗 在翻译标记时,它应该注意脚本标记 (大于)变为 请参阅PHP文档:使用和标记 这将分别将转换为和 $input = filter_input(INPUT_POST, 'fieldName', FILTER_SANITIZE_FULL_SPECIAL_CHARS); 因此: <script

就像我们使用
htmlspecialchars
来避免html标记作为输入一样

同样,我们是否也可以使用任何函数或方法来避免javascript

htmlspecialchars
不处理脚本标记


有什么建议吗

在翻译
标记时,它应该注意脚本标记

(大于)变为

请参阅PHP文档:

使用和标记

这将分别将
转换为

$input = filter_input(INPUT_POST, 'fieldName', FILTER_SANITIZE_FULL_SPECIAL_CHARS);
因此:

<script>alert('hello');</script>

看看不同的消毒过滤器。不要在所有内容上都使用fullspecialchars,而是使用适用于所需输入的筛选器。。。例如,如果您要输入一个数字,请使用数字过滤器。

您可以使用htmlentities()。这会阻止使用所有html标记。因此,请确保同时清除服务器端的数据,因为攻击者可以直接向服务器提交数据并绕过客户端保护。我尝试过的可能重复:$str=“alert('Hello');”$str=过滤器变量($str,过滤器清理字符串);echo$str;输出:警报('Hello');这没关系,但无论如何,我可以用它作为真或假?如果$str包含html标记,它应该退出,而不是在DB中输入详细信息。谢谢,我可以实现我想要的。再次感谢。如果($input!=filter\u var($input,…){return false;}
&lt;script&gt;alert(&#039;hello&#039;);&lt;/script&gt;