trovo la tua funzione molto utile ma come ho detto in precedenza non ho la possibilità di usare whitelist di variabili...vorrei semplicemente capire dato la mia applicazione quali funzioni mi conviene usare per sicurezza e visto che ci sono faccio un ricapitolo...
Codice PHP:
<?php
function add_slashes ($an_array) {
foreach ($an_array as $key => $value) {
$new_array[$key] = htmlentities(($an_array[$key]); // ho cambaito addslash con htmlentities
}
}
add_slashes($_POST);
add_slashes($_GET);
add_slashes($_REQUEST);
?>
Ora visto che mi consigliate di non usare addsleshes stavo chiedendo se a questo punto andava bene il codice seguente che simula addslashes:
Codice PHP:
$search = array("&", "\"", "'", "\", "<", ">");
$replace = array("&", """, "'", "\", "<", ">");
$var_post = count($_POST);
$keys = array_keys($_POST);
for ($i=0; $i<$var_post; $i++)
$_POST = str_replace($search, $replace, $_POST);
$var_post = count($_GET);
$keys = array_keys($_GET);
for ($i=0; $i<$var_post; $i++)
$_GET = str_replace($search, $replace, $_GET);
Infine una volta assodato se l'ultimo pezzo di codice mi conviene usarlo o meno. Tolto il recasting delle variabili per query, mysql_real_escape_string(), c'è qualche altra funzione/metodo che dovrei usare per validare i dati passati via GET/POST ?