Foros del Web » Programando para Internet » PHP »

Limpiando variables

Estas en el tema de Limpiando variables en el foro de PHP en Foros del Web. Hola, necesito "limpiar" el contenido de Get, Post o cookies, genericamente, para darle seguridad a los datos recibidos. Utilizo esta funcion: function sanitize_vars_fixed() { foreach ...
  #1 (permalink)  
Antiguo 20/10/2009, 12:00
 
Fecha de Ingreso: septiembre-2009
Mensajes: 67
Antigüedad: 14 años, 7 meses
Puntos: 2
Limpiando variables

Hola, necesito "limpiar" el contenido de Get, Post o cookies, genericamente, para darle seguridad a los datos recibidos. Utilizo esta funcion:

function sanitize_vars_fixed() {
foreach ($GLOBALS as $var => $value) {
if (is_array($value)) {
foreach ($value as $i => $j) {
//saca '/'
$j = preg_replace("/\\\\/", "", $j);
// ENT_QUOTES muestra ' escapeadas como html
$GLOBALS[$var][$i] = addslashes(htmlentities($j, ENT_QUOTES));
}
} else {
$value = preg_replace("/\\\\/", "", $value);
$GLOBALS[$var] = addslashes(htmlentities($value, ENT_QUOTES));
}
}
}

Pero usando PHP 5.2.10, me da errores como

[Tue Oct 20 10:45:54 2009] [error] [client 127.0.0.1] PHP Notice:
Array to string conversion in
D:\\sitio\\04sis\\config.php on line 116
[Tue Oct 20 10:45:54 2009] [error] [client 127.0.0.1] PHP Warning:
htmlentities() expects parameter 1 to be string, array given in
D:\\sitio\\04sis\\config.php on line 119
[Tue Oct 20 10:45:54 2009] [error] [client 127.0.0.1] PHP Fatal error:
Cannot use string offset as an array in
D:\\sitio\\04sis\\config.php on line 119

cual puede ser el problema? Alguien tiene una rutina similar que utulice? Estoy iniciando en php. Gracias
  #2 (permalink)  
Antiguo 20/10/2009, 12:11
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 8 meses
Puntos: 150
Respuesta: Limpiando variables

Yo uso esto al inicio de tooodas mis paginas con un include, de hecho creo que lo saque de aqui de este foro

Código PHP:
//Evitar SQL Injection (Seguridad)
foreach ($_POST as $key => $value) {   $_POST[$key] = mysql_real_escape_string($value); } 
foreach (
$_GET as $key => $value) {   $_GET[$key] = mysql_real_escape_string($value); } 
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 19:21.