《Web开发过滤JavascriptHTML的方法》
Posted likar
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《Web开发过滤JavascriptHTML的方法》相关的知识,希望对你有一定的参考价值。
JavaScript过滤方法:
第一种方案:使用 htmlspecialchars 函数转换特殊字符和使用 nl2br 函数插入一些必要的 <br /> 标签。
1 $comment = <<<eof 2 <script type="text/javascript"> 3 while (true) { 4 alert(‘我弹!‘); 5 } 6 </script> 7 eof; //假如 $comment 就是评论内容 8 $comment = nl2br(htmlspecialchars($comment)); //过滤javascript代码 9 echo $comment;
输出结果为:
<script type="text/javascript"><br /> while (true) {<br /> alert(‘我弹!‘);<br /> }<br /> </script>
第二种方案:把评论内容中出现的所有的<script...>,</script>去掉。
1 $comment = preg_replace("/<[^><]*script[^><]*>/i",‘‘,$comment); //把评论内容中出现的所有的<script...>,</script>去掉
输出结果为:
while (true) { alert(‘我弹!‘); }
HTML过滤方法:
第一种方案:直接把<>这样的符号转义掉,或者直接删除掉都是可以的。
1 $comment = preg_replace("/<[\/\!]*?[^<>]*?>/si",‘‘,$comment);
第二种方案:使用 strip_tags() 函数即可。
1 <?php 2 echo strip_tags("Hello <b>world!</b>"); 3 ?>
以上是关于《Web开发过滤JavascriptHTML的方法》的主要内容,如果未能解决你的问题,请参考以下文章
为啥我不直接在 Javascript 和 Javascript HTML 模板中构建整个 Web 应用程序?