1. 程式人生 > >淺析php過濾html字串,防止SQL注入的方法

淺析php過濾html字串,防止SQL注入的方法

本篇文章是對php中過濾html字串,防止SQL注入的方法進行了詳細的分析介紹,需要的朋友參考下  
  批量過濾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; }