"lurkando" un po' su questo sito e su internet ho messo insieme queste funzioni che, nelle mie intenzioni, andrebbero usate per stampare a video informazioni prese dall'utente (tipo il nome utente e così via attinti da una sessione) o per "sanitizzare" gli input (GET e POST)
codice:
function purgastringa($i_stringa,$i_lunghezzamassima)
{
if (!isset($i_stringa) || (trim($i_stringa)===""))
return;
if ($i_lunghezzamassima<=0)
return;
$i_stringa=str_ireplace('INSERT','',$i_stringa);
$i_stringa=str_ireplace('DELETE','',$i_stringa);
$i_stringa=str_ireplace('UPDATE','',$i_stringa);
$i_stringa=str_ireplace('LIKE','',$i_stringa);
$i_stringa=str_ireplace('CREATE','',$i_stringa);
$i_stringa=str_ireplace('DROP','',$i_stringa);
$i_stringa=str_ireplace('ALTER','',$i_stringa);
$i_stringa=str_ireplace('GRANT','',$i_stringa);
$i_stringa=str_ireplace('TABLE','',$i_stringa);
$i_stringa=str_ireplace('EXISTS','',$i_stringa);
$i_stringa = trim($i_stringa);
$s = str_split($i_stringa, 1);
$minimo=min(strlen($i_stringa),$i_lunghezzamassima);
for($i=0; $i < min(strlen($i_stringa),$i_lunghezzamassima); $i++)
if ((!ctype_alnum($s[$i])) && ($s[$i]!==' ') && ($s[$i]!=='!'))
$s[$i]='';
return implode(array_slice($s,0,$minimo));
}
function write($i_stringa,$i_lunghezza=30)
{
echo purgastringa($i_stringa,$i_lunghezza);
}
In pratica il classico echo ("ciao utente".$_SESSIONE...) diventerebbe qualcosa del genere write("ciao utente ".$_SESSIONE...)
Può avere senso, o mi sto complicando la vita?
Vorrei "distruggere" tutti i possibili sql injection (in ingresso) e XSS (in uscita)
...