كود PHP:
function safe($this)
{
//$word = trim($this);
//$vlink = nl2br($vlink);
#*****$word = preg_replace("/(<\/?)(\w+)([^>]*>)/e","",$string);
//$word = htmlentities($word);
#*****$word = htmlspecialchars($word, ENT_QUOTES);
#*****$word = addslashes($word);
#*****$word = strip_tags($word);
//$word = htmlentities($word);
//$word = stripslashes($word);
#$trans = get_html_translation_table(HTML_ENTITIES);
#$word = strtr($word, $trans);
//$vlink = str_replace($xarray,'',$vlink);
$a = array('<?','?>','<%','%>');
$text = str_replace($a,'',$this);
$text = str_replace('"','',$text);
$text = str_replace("'",'',$text);
$text = strip_tags($text, '<p><a>');
//$text = htmlentities($text);
$trans = get_html_translation_table(HTML_ENTITIES);
$encoded = strtr($text, $trans);
$text = stripslashes($text);
//$text = addslashes($text);
//$text = quotemeta($text);
return $text;
}
طبعاً يمكنك تجربة بقية دوال الحماية في هذه الدالة ، ولزيادة الحماية أكثر حماية كالتالي:
كود PHP:
function safe($string)
{
//$vlink = $string;
$word = trim($string);
#$vlink = strip_tags($vlink);
//$vlink = nl2br($vlink);
$word = preg_replace("/(<\/?)(\w+)([^>]*>)/e","",$string);
//$word = htmlentities($word);
$word = strip_tags($word);
//$word = htmlentities($word);
//$word = stripslashes($word);
$word = htmlspecialchars($word, ENT_QUOTES);
#$trans = get_html_translation_table(HTML_ENTITIES);
#$word = strtr($word, $trans);
$xarray = array (
"\.", "\..", "\...", "\/", "\"", "\'", "<",
">", "*", "#", ";", "\\", "~",
"\&", "@", "\!", ":", "-", "_",
"(", ")", "\"", "'", '?', '/',
'<', '>', ".", ".", "{", "}", "*",
',', '$', "|", "[", "]", '\\', '_',
'~', '!', '@', '#', '$', '^', '*', '(', ')', '_', '=', '-',
'[', ']', '{', '}', ';', "'", ':', '<', '>', '?', '.', ",", '/', '\\',
);
//$vlink = str_replace($xarray,'',$vlink);
//echo "($string -> $vlink)";
$arr1 = str_split($string);
######################################
foreach ($arr1 as $str) #
{/////////////////////////////////////
foreach ($xarray as $danger) #
{//-----------------------------//
if($str == $danger) #
{define(D,'DANGER');} #
}//-----------------------------//
}#####################################
//echo T;
/*
foreach ($xarray as $danger)
{ if(@eregi($danger,$word))
{return false;}
if(@$vlink ==$danger)
{return false;}
elseif($d !='DANGER')
{ return $word; }
}*/
if(D !='DANGER')
{ return $word; }
else{return false; }
//return $vlink;
}
أرجو منكم التصحيح إذا كان هناك ملاحظات