Ho un codice PHP legacy che tenta di prevenire script / SQL injection con quanto segue:
if (!empty($_POST)) {
reset($_POST);
while (list($k,$v)=each($_POST)) {
if(!is_array($_POST{$k}))
{
$val=str_replace("&","&",htmlentities($v,ENT_QUOTES));
$$k=$val;
//$_POST{$k}=$val;
if (!get_magic_quotes_gpc())
$_POST{$k}=$val;
else
$_POST{$k}=stripslashes($val);
}
}
}
Lo stesso è esattamente replicato anche per $ _GET.
È sufficiente per evitare script / SQL injection?