php过虑顾客递交主要参数,防引入

日期:2021-03-24 类型:科技新闻 

关键词:微信公众号平台小程序,微信打分小程序,小程序发布,小程序大全,微信小程序编程

2012/11/24 at 17:16 php过虑顾客递交主要参数,防引入 in: 后端开发程序

下列编码完成过虑php的$_GET 和$_POST主要参数

/**
* 安全性预防
*/
function Add_S($array)
{
foreach($array as $key= $value)
{
if(!is_array($value))
{
$value = get_magic_quotes_gpc()?$value:addslashes($value);
$array[$key]=filterHtml($value);
}
Else
{
Add_S($array[$key]);
}
}
return $array;
}
function glstr($var) {

if (is_array($var)) {
return Add_S($var);
}
elseif(strlen($var)){
$var = get_magic_quotes_gpc()?$var:addslashes($var);

$var = filterHtml($var);
}
return $var;
}
function filterHtml($html)
{
$farr = array(
"/ !DOCTYPE([^ ]*?) /eis",
"/ (\/?)(html|body|head|link|meta|base|input)([^ ]*?) /eis",
"/ (script|i?frame|style|title|form)(.*?) \/\\1 /eis",
"/( [^ ]*?\s+)on[a-z]+\s*?=(\"|')([^\\2]*)\\2([^ ]*? )/isU",//过虑javascript的on恶性事件
"/\s+/",//过虑过剩的空白页
);
$tarr = array(
"",
"",
"",
"\\1\\4",
" ",
);
$html = preg_replace( $farr,$tarr,$html);
return $html;
}
if (sizeof($_GET)) {
foreach($_GET as $key = $value) {
$_GET[$key] = glstr($value); //
}

}
if (sizeof($_POST)) {
foreach($_POST as $key = $value) {
$_POST[$key] = glstr($value); //
}
}

标识:php, 过虑