Ver Mensaje Individual
  #2 (permalink)  
Antiguo 30/10/2008, 10:55
Avatar de emiliodeg
emiliodeg
 
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 8 meses
Puntos: 55
Respuesta: Forzar una variable

el objetivo seria que vos necesitas un tipo que sea estrictamente de un tipo
ejemplo

$_GET['id']; // identificador de mi noticia

mysql_query("select * from noticias where id='''.$_GET['id']."'");

si algun chistoso me pone un sqlinject me jode la consulta
ahroa si yo le digo a $_GET['id']

$_GET['id']=(int) $_GET['id']; //forzar a entero
$_GET['id']=intval( $_GET['id']); //que lo cambie por entero
$_GET['id']=preg_replace('/([^0-9]+)/','', $_GET['id']); //sacar todo lo que no sea numero

bueno aqui vamos a mejorar en gran medida las posiblidades de que nuestro $_GET['id'] sea un numero y podamos usarlo con mayor tranquilidad

otro ejemplo podria ser el tipo de parametro que necesitamos por ejemplo

array_merge(); //todos los parametros que pasemos tiene q ser si o si del tipo array
supongamos

$a1=array('algo');
$a2[]=33;
$a3=resultado_de_funcion();//puede devolver un array o algun otro tipo (como false si fallo)
$array=array_merge($a1,$a2,(array)$a3);
aqui forzamos a $a3 a que sin importar el tip que recibio de la funcion lo tome como un array para que nuestra funcion array_merge no de error

bueno espero que halla quedado claro
saludos
__________________
Degiovanni Emilio
developtus.com