浅析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 相关文章推荐
自定义PHP分页函数
Oct 09 PHP
改进的IP计数器
Oct 09 PHP
深入PHP与浏览器缓存的分析
Jun 03 PHP
PHP函数addslashes和mysql_real_escape_string的区别
Apr 22 PHP
Codeigniter框架的更新事务(transaction)BUG及解决方法
Jul 25 PHP
利用PHP脚本在Linux下用md5函数加密字符串的方法
Jun 29 PHP
php简单实现批量上传图片的方法
May 09 PHP
PHP调用API接口实现天气查询功能的示例
Sep 21 PHP
PHP支付宝当面付2.0代码
Dec 21 PHP
laravel使用Faker数据填充的实现方法
Apr 12 PHP
PHP命名空间与自动加载机制的基础介绍
Aug 25 PHP
thinkphp5.1 框架导入/导出excel文件操作示例
May 25 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函数的常用方法及注意之处小结
2011/07/10 PHP
PHP使用array_fill定义多维数组的方法
2015/03/18 PHP
PHP中的使用curl发送请求(GET请求和POST请求)
2017/02/08 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
2019/12/13 PHP
Laravel如何实现适合Api的异常处理响应格式
2020/06/14 PHP
THINKPHP5分页数据对象处理过程解析
2020/10/28 PHP
javascript 内存回收机制理解
2011/01/17 Javascript
javascript获取select的当前值示例代码(兼容IE/Firefox/Opera/Chrome)
2013/12/17 Javascript
解决用jquery load加载页面到div时,不执行页面js的问题
2014/02/22 Javascript
归纳下js面向对象的几种常见写法总结
2016/08/24 Javascript
Javascript中常见的逻辑题和解决方法
2016/09/17 Javascript
Javascript之图片的延迟加载的实例详解
2017/07/24 Javascript
微信小程序表单弹窗实例
2018/07/19 Javascript
解决layUI的页面显示不全的问题
2019/09/20 Javascript
vue 解决文本框被键盘遮住的问题
2019/11/06 Javascript
vue点击自增和求和的实例代码
2019/11/06 Javascript
vue+axios 拦截器实现统一token的案例
2020/09/11 Javascript
JavaScript 声明私有变量的两种方式
2021/02/05 Javascript
python实现删除文件与目录的方法
2014/11/10 Python
用Python编写脚本使IE实现代理上网的教程
2015/04/23 Python
python实现比较两段文本不同之处的方法
2015/05/30 Python
python创建进程fork用法
2015/06/04 Python
如何利用python查找电脑文件
2018/04/27 Python
完美解决python中ndarray 默认用科学计数法显示的问题
2018/07/14 Python
选择Python写网络爬虫的优势和理由
2019/07/07 Python
使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能
2019/12/12 Python
tensorflow实现对张量数据的切片操作方式
2020/01/19 Python
Python Celery异步任务队列使用方法解析
2020/08/10 Python
L’AGENCE官网:加州女装品牌
2018/06/03 全球购物
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
2014年无财产无子女离婚协议书范本
2014/10/09 职场文书
初中英语教学反思范文
2016/02/15 职场文书
Mac环境Nginx配置和访问本地静态资源的实现
2021/03/31 Servers
在python中实现导入一个需要传参的模块
2021/05/12 Python
Python OpenCV实现图像模板匹配详解
2022/04/07 Python
springcloud整合seata
2022/05/20 Java/Android