浅析php过滤html字符串,防止SQL注入的方法


Posted in PHP onJuly 02, 2013

批量过滤post,get敏感数据

$_GET = stripslashes_array($_GET);
$_POST = stripslashes_array($_POST);

数据过滤函数
function stripslashes_array(&$array) {
 while(list($key,$var) = each($array)) {
  if ($key != 'argc' && $key != 'argv' && (strtoupper($key) != $key || ''.intval($key) == "$key")) {
   if (is_string($var)) {
    $array[$key] = stripslashes($var);
   }
   if (is_array($var))  {
    $array[$key] = stripslashes_array($var);
   }
  }
 }
 return $array; 
}

替换HTML尾标签,为过滤服务
function lib_replace_end_tag($str)
{
 if (empty($str)) return false;
 $str = htmlspecialchars($str);
 $str = str_replace( '/', "", $str);
 $str = str_replace("\\", "", $str);
 $str = str_replace(">", "", $str);
 $str = str_replace("<", "", $str);
 $str = str_replace("<SCRIPT>", "", $str);
 $str = str_replace("</SCRIPT>", "", $str);
 $str = str_replace("<script>", "", $str);
 $str = str_replace("</script>", "", $str);
 $str=str_replace("select","select",$str);
 $str=str_replace("join","join",$str);
 $str=str_replace("union","union",$str);
 $str=str_replace("where","where",$str);
 $str=str_replace("insert","insert",$str);
 $str=str_replace("delete","delete",$str);
 $str=str_replace("update","update",$str);
 $str=str_replace("like","like",$str);
 $str=str_replace("drop","drop",$str);
 $str=str_replace("create","create",$str);
 $str=str_replace("modify","modify",$str);
 $str=str_replace("rename","rename",$str);
 $str=str_replace("alter","alter",$str);
 $str=str_replace("cas","cast",$str);
 $str=str_replace("&","&",$str);
 $str=str_replace(">",">",$str);
 $str=str_replace("<","<",$str);
 $str=str_replace(" ",chr(32),$str);
 $str=str_replace(" ",chr(9),$str);
 $str=str_replace("    ",chr(9),$str);
 $str=str_replace("&",chr(34),$str);
 $str=str_replace("'",chr(39),$str);
 $str=str_replace("<br />",chr(13),$str);
 $str=str_replace("''","'",$str);
 $str=str_replace("css","'",$str);
 $str=str_replace("CSS","'",$str); 
 return $str;  
}
PHP 相关文章推荐
用文本文件实现的动态实时发布新闻的程序
Oct 09 PHP
DedeCms模板安装/制作概述
Mar 11 PHP
php 动态执行带有参数的类方法
Apr 10 PHP
如何使用PHP批量去除文件UTF8 BOM信息
Aug 05 PHP
YII实现分页的方法
Jul 09 PHP
php对关联数组循环遍历的实现方法
Mar 13 PHP
详解php的socket通信
Aug 11 PHP
PHP的邮件群发系统phplist配置方法详细总结
Mar 30 PHP
PHPExcel导出2003和2007的excel文档功能示例
Jan 04 PHP
swoole和websocket简单聊天室开发
Nov 18 PHP
PHP递归遍历文件夹去除注释并压缩php源代码的方法示例
May 23 PHP
laravel手动创建数组分页的实现代码
Jun 07 PHP
服务器变量 $_SERVER 的深入解析
Jul 02 #PHP
浅析PHP中的字符串编码转换(自动识别原编码)
Jul 02 #PHP
解析array splice的移除数组中指定键的值,返回一个新的数组
Jul 02 #PHP
PHP文件去掉PHP注释空格的函数分析(PHP代码压缩)
Jul 02 #PHP
浅析php中如何在有限的内存中读取大文件
Jul 02 #PHP
解析PHP 5.5 新特性
Jul 02 #PHP
php仿QQ验证码的实例分析
Jul 01 #PHP
You might like
php设计模式之单例模式使用示例
2014/01/20 PHP
thinkphp的URL路由规则与配置实例
2014/11/26 PHP
浅谈PHP array_search 和 in_array 函数效率问题
2019/10/15 PHP
PHP获取类私有属性的3种方法
2020/09/10 PHP
jQuery AJAX 调用WebService实现代码
2010/03/24 Javascript
JavaScript入门之对象与JSON详解
2011/10/21 Javascript
服务器端的JavaScript脚本 Node.js 使用入门
2012/03/07 Javascript
用js获取电脑信息(是使用与IE浏览器)
2013/01/15 Javascript
Jquery.addClass始终无效原因分析
2013/09/08 Javascript
写得不错的jquery table鼠标经过变色代码
2013/09/27 Javascript
JavaScript导出Excel实例详解
2014/11/25 Javascript
2014 HTML5/CSS3热门动画特效TOP10
2014/12/07 Javascript
jQuery实现html表格动态添加新行的方法
2015/05/28 Javascript
使用jQuery+EasyUI实现CheckBoxTree的级联选中特效
2015/12/06 Javascript
javascript如何写热点图
2015/12/08 Javascript
Js获取图片原始宽高的实现代码
2016/05/17 Javascript
BootStrap 导航条实例代码
2017/05/18 Javascript
vuex学习之Actions的用法详解
2017/08/29 Javascript
[00:27]DOTA2荣耀之路2:Patience from zhou!
2018/05/24 DOTA
[01:06:18]DOTA2-DPC中国联赛 正赛 Phoenix vs Dynasty BO3 第二场 1月26日
2021/03/11 DOTA
Python Web框架Flask中使用七牛云存储实例
2015/02/08 Python
Python从MP3文件获取id3的方法
2015/06/15 Python
python3爬取淘宝信息代码分析
2018/02/10 Python
PyCharm 设置SciView工具窗口的方法
2019/01/15 Python
详解python中的模块及包导入
2019/08/30 Python
python 实现矩阵按对角线打印
2019/11/29 Python
使用python 的matplotlib 画轨道实例
2020/01/19 Python
浅析python 动态库m.so.1.0错误问题
2020/05/09 Python
css3实现元素环绕中心点布局的方法示例
2019/01/15 HTML / CSS
Html5页面上如何禁止手机虚拟键盘弹出
2020/03/19 HTML / CSS
June Jacobs尊积帕官网:知名的spa水疗护肤品牌
2019/03/21 全球购物
优秀少先队大队辅导员事迹材料
2014/05/04 职场文书
2014年个人业务工作总结
2014/11/17 职场文书
2015年社区党建工作汇报材料
2015/06/25 职场文书
关于vue-router-link选择样式设置
2022/04/30 Vue.js
Java 轮询锁使用时遇到问题
2022/05/11 Java/Android