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

yipeiwu_com6年前PHP代码库
批量过滤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使用Jpgraph绘制3D饼状图的方法

php使用Jpgraph绘制3D饼状图的方法

本文实例讲述了php使用Jpgraph绘制3D饼状图的方法。分享给大家供大家参考。具体实现方法如下: <?php include ("src/jpgraph.php"...

php下利用curl判断远程文件是否存在的实现代码

复制代码 代码如下: //判断远程文件 function check_remote_file_exists($url) { $curl = curl_init($url); // 不取回...

PHP连接SQLServer2005 的问题解决方法

后来火了,在虚拟机装上WIN2003一试,加载MSSQL模块是没问题了,但是用mssql_connect("localhost", "sa", "");却怎么也连不上数据库,后来上网查了...

PHP实现的回溯算法示例

PHP实现的回溯算法示例

本文实例讲述了PHP实现的回溯算法。分享给大家供大家参考,具体如下: 问题:  一头大牛驼2袋大米,一头中牛驼一袋大米,两头小牛驼一袋大米,请问100袋大米需要多少头大牛,...

关于使用coreseek并为其做分页的介绍

coreseek 做分页时找数据总量还真不好找。以为他会给一个方法(函数)什么的去获取,结果却不是。首先需要了解:num_matches: 当前返回的结果数,<= limit设置值...