Foros del Web » Programando para Internet » PHP »

Validar datos en un array

Estas en el tema de Validar datos en un array en el foro de PHP en Foros del Web. Me gustaría saber cual es la forma más simple, la correcta o la mejor...puntualmente lo que necesito es pasarle un htmlentities a $_GET y a ...
  #1 (permalink)  
Antiguo 12/09/2007, 10:01
 
Fecha de Ingreso: octubre-2003
Mensajes: 540
Antigüedad: 20 años, 6 meses
Puntos: 1
Validar datos en un array

Me gustaría saber cual es la forma más simple, la correcta o la mejor...puntualmente lo que necesito es pasarle un htmlentities a $_GET y a $_POST, no se si como medida anti sql-injection es suficiente pero bueno, es lo que me preocupa ahora.

Como lo hago?
Necesito descomponer el array, pasarle la función a cada elemento e ir metiendolos en un nuevo arreglo? o hay alguna forma más directa?

Gracias de antemano
  #2 (permalink)  
Antiguo 12/09/2007, 11:57
Avatar de oso96_2000  
Fecha de Ingreso: junio-2002
Ubicación: Distrito Federal
Mensajes: 558
Antigüedad: 21 años, 10 meses
Puntos: 35
Re: Validar datos en un array

No se si funcione, pero me imagino que si.. la forma mas simple que se me ocurre es usando array_map().

Código PHP:
$_GET array_map('htmlentities'$_GET);
$_POST array_map('htmlentities'$_POST); 
Aunque para prevenir sql-injectin y eso, tmb tienes addslashes, mysql_real_escape_string() y algunas más.

Saludos
__________________
Sin Ideas
  #3 (permalink)  
Antiguo 12/09/2007, 12:49
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
Re: Validar datos en un array

Si es para prevenir SQL injection, deberías pasar un parámetro para aclarar que escape las comillas también...

Código PHP:
$_GET array_map('htmlentities'$_GET,array(ENT_QUOTES));
$_POST array_map('htmlentities'$_POST,array(ENT_QUOTES)); 
Igualmente no es correcto hacer esto... no sabés si todas las variables van a ir a una consulta, y si es así, tampoco estás escapandolas en forma apropiada...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:03.