Foros del Web » Programando para Internet » PHP »

error de sintaxis en update

Estas en el tema de error de sintaxis en update en el foro de PHP en Foros del Web. Estoy intentando hacer el update de unos datos en la bd, para lo cual tengo: Código PHP: mysql_query  ( "update usuario cedula = " . $cedula . " codigo = " . ...
  #1 (permalink)  
Antiguo 11/11/2004, 09:30
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.411
Antigüedad: 16 años, 6 meses
Puntos: 20
error de sintaxis en update

Estoy intentando hacer el update de unos datos en la bd, para lo cual tengo:

Código PHP:
mysql_query ("update usuario cedula = ".$cedula." codigo = ".$codigo." nombre = ".$nombre." where cedula = ".$cedula."") or die ('I cannot connect to the database because: ' mysql_error()); 
pero me da este error:

Algo está equivocado en su sintax cerca '= 94062438 codigo = 996564 nombre = Cesar Augusto where cedula =' en la linea 1

como lo soluciono, debo aclarar que tengo un grave problema con las comillas gracias
__________________
Say no more.......
  #2 (permalink)  
Antiguo 11/11/2004, 09:49
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 13 años, 6 meses
Puntos: 2
mysql_query ("update usuario set cedula='$cedula',codigo='$codigo',nombre='$nombre' where cedula='$cedula'")

Si alguno de los campos es numérico quita las comillas simples.
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #3 (permalink)  
Antiguo 11/11/2004, 12:49
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Sería recomendable usar siempre las comillas .. sea campo numérico o no .. sobre todo cuando la entrada es externa (al script que la ejecuta), así es una de las técnicas de evitar posibles ataques de "SQL inyection". .. También es bueno usar mysql_escape_string() y simpre validar que tipo de dato se espera .. que rango si corresponde ..etc.


Un saludo,
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 22:22.