Tengo un formulario con muchas variables que luego envía un correo electrónico, en lugar de desinfectar cada valor de $_POST
con filter_var($_POST['var'], FILTER_SANITIZE_STRING);
Estaba buscando una pieza más simple de código. Se me ocurrió lo siguiente, que parece funcionar, ya que creo que la acción predeterminada es FILTER_SANITIZE_STRING
, pero me preguntaba cuáles son las opiniones de las personas, y si esto no es una buena práctica, ¿podría decirme por qué? Los $_POST
valores se insertan individualmente en nuevas variables, por lo que sólo estarían utilizando array_map justo en el inicio de desinfectar todo ...
$_POST = array_map('filter_var', $_POST);
Gracias por sus respuestas, para darle un poco más de información, básicamente :
tengo 20-30 campos de entrada en una forma que están siendo capturados, los datos a continuación, se muestra al usuario comprobar su entrada, son desinfectados luego las variables, el usuario es enviado un correo electrónico y luego, finalmente, los detalles se ingresan en un db.
Actualmente estoy desinfectando utilizando la función anterior array_map, así como FILTER_SANITIZE_EMAIL en la dirección de correo electrónico antes de enviar un correo electrónico y luego escapar de la entrada utilizando mysql_real_escape_string() antes de insertar en el db. Sin entrar en declaraciones preparadas, etc. ¿Crees que debería estar haciendo algo adicionalmente? ¡gracias de nuevo!
para desinfectar cadena, aquí está una función útil - http://stackoverflow.com/questions/3126072/what-are-the-best-php-input-sanitizing-functions/20403438#20403438 –
posible duplicado de [PHP -anitiza los valores de un ar ray] (http://stackoverflow.com/questions/4861053/php-sanitize-values-of-a-array) – feeela