当前位置:首页 > CMS教程 > ecshop > 列表

ecshop防sql注入 递归过滤get,post方法

发布:smiling 来源: PHP粉丝网  添加日期:2015-05-08 09:01:41 浏览: 评论:0 

echsop开源的程序,做了sql防注入功能,函数在文件/includes/lib_base.php里面,如果我们要自定开发表单,可以用下面这些函数进行过滤.

ecshop二次开发可能会要提交表单,我们最好是用ecshop自动的函数addslashes_deep过滤一下,下面是函数原型及使用方法.

  1. /** 
  2.  * 递归方式的对变量中的特殊字符进行转义 
  3.  * 
  4.  * @access  public 
  5.  * @param   mix     $value 
  6.  * 
  7.  * @return  mix 
  8.  */ 
  9. function addslashes_deep($value
  10.     if (emptyempty($value)) 
  11.     { 
  12.         return $value
  13.     } 
  14.     else 
  15.     { 
  16.         return is_array($value) ? array_map('addslashes_deep'$value) : addslashes($value);  //phpfensi.com 
  17.     } 

使用方法:

  1. /* 对用户传入的变量进行转义操作。*/ 
  2. if (!get_magic_quotes_gpc()) 
  3.     if (!emptyempty($_GET)) 
  4.     { 
  5.         $_GET  = addslashes_deep($_GET); 
  6.     } 
  7.     if (!emptyempty($_POST)) 
  8.     { 
  9.         $_POST = addslashes_deep($_POST); 
  10.     } 
  11.  
  12.     $_COOKIE   = addslashes_deep($_COOKIE); 
  13.     $_REQUEST  = addslashes_deep($_REQUEST); 
  14. }

Tags: sql注入 ecshop过滤get

分享到: