Ver Mensaje Individual
  #6 (permalink)  
Antiguo 16/07/2009, 14:00
Avatar de Acron_0248
Acron_0248
 
Fecha de Ingreso: junio-2005
Ubicación: 127.0.0.1
Mensajes: 1.648
Antigüedad: 18 años, 10 meses
Puntos: 18
Respuesta: Select y reqest

Solo para agregar unas cosas más además de lo que ya te dijeron sobre asegurarte que $_REQUEST no está vacío....

1. Espero que "urgen_db_owner" no sea el verdadero nombre del usuario mysql y que "urgencias08" no sea su verdadera clave y que tu base de datos no se llame en realidad "urgencias_db". Si es así, no los publiques, son datos confidenciales que solo deberías saber tú y quien tenga permisos administrativos con la base de datos.

2. No uses $_REQUEST, usa $_GET o $_POST o $_COOKIE (dependiendo de cómo trabaje tu aplicación)

3. Valida los datos que llegan. ¿Qué pasa si en $_REQUEST['Id_documento'] lo que hay como valor es:

; DROP DATABASE urgencias_db

o tal vez

' AND TRUNCATE TABLE actuasdue'--

??

Tienes a tu disposición para validar datos cosas como (solo usaré $_REQUEST como ejemplo, recuerda usar $_GET o $_POST o $_COOKIE en vez de $_REQUEST):

type casting:
Código PHP:
$id = (int) $_REQUEST['Id_documento']; 
revisar el tipo de dato:

Código PHP:
if ( is_int($_REQUEST['Id_documento']) ) {} 
o

Código PHP:
if ( ctype_digit($_REQUEST['Id_documento']) ) {} 
o

Código PHP:
if ( is_numeric($_REQUEST['Id_documento']) ) {} 
o

Código PHP:
if ( preg_match('/\d+/'$_REQUEST['Id_documento']) ) {} 

// o puedes usar preg_match_all 
o

Código PHP:
if ( filter_var($_REQUEST['Id_documento'], FILTER_VALIDATE_INT) ) {} 
y por supuesto, escapar datos:

Código PHP:
$id mysql_real_escape_string($_REQUEST['Id_documento']); 
Las más seguras son type casting, usar expresiones regulares, la extensión filter (depende de la versión de PHP) y escapar, en tu caso, con mysql_real_escape_string.

En cualquier caso, hay muchas opciones para validar los datos que esperas recibir como para no usar ninguna de ellas.
__________________
Usuario Reigistrado de linux #399288