IT猫扑网文章教程

分类分类

php过滤恶意html字符

2015-06-28 00:00作者:网管联盟

现在用户在前台提交内容的时候,一般都会使用html编辑器,不仅丰富了提交内容,而且能够带来更好的用户体验度,但是这样做的危险就是有些用户会提交恶意html代码和其他非法字符,可能会造成页面的混乱,用上下面这个过滤函数你就可以高枕无忧了。。。

看下面php代码:

  1. <?php
  2. function filter($str)
  3. {
  4. $farr = array(
  5. &/s+/&, //过滤多余的空白
  6. &/<(/?)(script|i?frame|style|html|body|title|link|meta|?|%)([^>]*?)>/isU&, //过滤 script等恶意代码,还可以加入object的过滤flash
  7. &/(<[^>]*)on[a-zA-Z]+s*=([^>]*>)/isU&, //过滤javascript的on事件
  8. );
  9. $tarr = array(
  10. & &,
  11. &<\1\2\3>&, //如果要直接清除不安全的标签,这里可以留空
  12. &\1\2&,
  13. );
  14. $str = preg_replace( $farr,$tarr,$str);
  15. return $str;
  16. }
  17. //小小演示下
  18. echo filter(&<script>alert('www.itmop.com'></script>&);
  19. ?>

运行结果:<script>alert('www.itmop.com'></script>

看到结果了吧,很轻松解决安全危机。。。

展开全部

相关文章

说两句网友评论
    我要跟贴
    取消