Corsi on-line

Filtrare tutti i valori di $_POST con una funzione

Quando tramite form si inviano molti parametri di input può essere utile non filtrarli uno per uno ma utilizzare una semplice funzione in grado di svolgere questo compito automaticamente; del resto $_POST (ma lo stesso discorso può essere fatto per altre variabili di variabili cone $_GET, $_SESSION etc.) non è altro che un array, quindi per scorrerne tutti i valori basterà un comune ciclo come il seguente:

function ripulisci($v)
{
# controlliamo che la variabile sia un array
if (is_array($v))
 {
# se si tratta di un array inizializziamo il ciclo
 foreach ($v as $k => $val)
 {
# filtriamo tutti i valori
 $v[$k] = htmlentities(strip_tags(trim($val)),ENT_QUOTES);
 }
 }else{
# se la variabile non è un array
# applichiamo i filtri senza ciclo
 $v = htmlentities(strip_tags(trim($v)),ENT_QUOTES);
 }
# in ogni caso otterremo il valore di ritorno
return $v;
}

utilizzare la funzione su $_POST sarà molto semplice:

$_POST = ripulisci($_POST);
Post correlati
  • scusa, pechè non utilizzare “filter_input” e/o filter_input_array? (anche se serve php 5 >= 5.2.0)

  • Claudio Garau

    puoi utilizzare le funzioni che preferisci, l’impostante è applicarle a tutto il contenuto di $_POST o $_GET senza dover intervenire manualmente

I più letti del mese
Tematiche