Logo
You
Code

Limpiar variables POST y GET

Autor YouCode - http://www.youcode.com.ar/php/limpiar-variables-post-y-get-121

Evitar SQL Injection en nuestras aplicaciones web con PHP, el metodo es muy sencillo solo se debe agregar al inicio de nuestros archivos .php que se van a invocar y lo que hace es recorrer todos los valores recibidos por GET y POST y limpiarlos de cadenas peligrosas.

Opcion 1:
 
$input_arr = array(); 
foreach ($_POST as $key => $input_arr) 
{ 
	$_POST[$key] = addslashes(limpiarCadena($input_arr)); 
}
 
$input_arr = array(); 
foreach ($_GET as $key => $input_arr) 
{ 
	$_GET[$key] = addslashes(limpiarCadena($input_arr)); 
}
Opcion 2:
 
array_walk($_POST, 'limpiarCadena');
array_walk($_GET, 'limpiarCadena');
function limpiarCadena($valor)
{
	$valor = str_ireplace("SELECT","",$valor);
	$valor = str_ireplace("COPY","",$valor);
	$valor = str_ireplace("DELETE","",$valor);
	$valor = str_ireplace("DROP","",$valor);
	$valor = str_ireplace("DUMP","",$valor);
	$valor = str_ireplace(" OR ","",$valor);
	$valor = str_ireplace("%","",$valor);
	$valor = str_ireplace("LIKE","",$valor);
	$valor = str_ireplace("--","",$valor);
	$valor = str_ireplace("^","",$valor);
	$valor = str_ireplace("[","",$valor);
	$valor = str_ireplace("]","",$valor);
	$valor = str_ireplace("\\","",$valor);
	$valor = str_ireplace("!","",$valor);
	$valor = str_ireplace("¡","",$valor);
	$valor = str_ireplace("?","",$valor);
	$valor = str_ireplace("=","",$valor);
	$valor = str_ireplace("&","",$valor);
	return $valor;
}
La función limpiarCadena puedes agregar o quitar cadenas según sea su necesidad.
http://www.youcode.com.ar/php/limpiar-variables-post-y-get-121