Foros del Web » Programando para Internet » ASP Clásico »

Problema con UpDate

Estas en el tema de Problema con UpDate en el foro de ASP Clásico en Foros del Web. Hola a Todos. Tengo un problema y no se donde esta mal, ya modifique e hise lo que hago normalmente cuando me pasa este error ...
  #1 (permalink)  
Antiguo 02/12/2008, 16:21
Avatar de GUAPOBEN  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico DF
Mensajes: 204
Antigüedad: 22 años, 5 meses
Puntos: 1
Problema con UpDate

Hola a Todos.

Tengo un problema y no se donde esta mal, ya modifique e hise lo que hago normalmente cuando me pasa este error pero no me queda.

Quiero hacer un Update pero me arroja el siguiente error:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Controlador ODBC Microsoft Access] Error de sintaxis (falta operador) en la expresión de consulta 'idp ='.
/Evaluacion/add_retro_up.asp, línea 11

Mi update esta asi:

("UPDATE retro SET EV = '" & Request.Form("EV") & "', NE = '" & Request.Form("NE") & "', AUTE = '" & Request.Form("AUTE") & "', UN = '" & Request.Form("UN") & "', AREA = '" & Request.Form("AREA") & "', TIPO = '" & Request.Form("TIPO") & "', LIDER = '" & Request.Form("LIDER") & "', GR = '" & Request.Form("GR") & "', CL = '" & Request.Form("CL") & "', CI = '" & Request.Form("CI") & "', PI = '" & Request.Form("PI") & "' WHERE idp = " & (Request.form("f_id")) & ";"

Ya busque soluciones en el foro pero lo que encuentro tienen lo mismo que yo, y no le encuentro, alguien me puede ayudar?

Gracias como siempre.
__________________
Guapo Ben
Servidor y Amigo :adios:
  #2 (permalink)  
Antiguo 02/12/2008, 16:33
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: Problema con UpDate

imprime el update y has un response.end

verifica que lleva tu consulta y podrás encontrar el error

suerte
__________________
JuanRa Pérez
San Salvador, El Salvador
  #3 (permalink)  
Antiguo 02/12/2008, 17:03
Avatar de GUAPOBEN  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico DF
Mensajes: 204
Antigüedad: 22 años, 5 meses
Puntos: 1
Respuesta: Problema con UpDate

No puedo imprimir el UPDATE ya que no se ejecuta por el error. puse el Response.write y response.end y me sigue mostrando el mismo error.

Dentro del UpDate existe forma de hacerlo de alguna forma? es decir realizar la sentencia de otra forma?

Ya valide los campos en la tabla y todos tienen el mismo nombre que en mi Update, quite todos los campos y solo deje 2 y el WHERE y tengo el mismo error. yo envio esto:

EV=Nombre&NE=10&AUTE=Nombre2&UN=CAMPO&AREA=VERDE&T IPO=NORMAL&Lider=NA&GR=NA&CL=CORRECTO&CI=CORRECTO& PI=CORRECTO&f_id=14

Por lo que no envio ningun dato vacio, pero no me deja hacer el update.

Gracias.
__________________
Guapo Ben
Servidor y Amigo :adios:
  #4 (permalink)  
Antiguo 02/12/2008, 19:53
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: Problema con UpDate

sql = "UPDATE retro SET EV = '" & Request.Form("EV") & "', NE = '" & Request.Form("NE") & "', AUTE = '" & Request.Form("AUTE") & "', UN = '" & Request.Form("UN") & "', AREA = '" & Request.Form("AREA") & "', TIPO = '" & Request.Form("TIPO") & "', LIDER = '" & Request.Form("LIDER") & "', GR = '" & Request.Form("GR") & "', CL = '" & Request.Form("CL") & "', CI = '" & Request.Form("CI") & "', PI = '" & Request.Form("PI") & "' WHERE idp = " & (Request.form("f_id")) & ";"
response.write sql
response.end
Conexion.Execute(sql)
__________________
JuanRa Pérez
San Salvador, El Salvador
  #5 (permalink)  
Antiguo 03/12/2008, 06:59
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 22 años, 8 meses
Puntos: 16
Respuesta: Problema con UpDate

EN GENERAL, para evitar que la aplicacion se caiga producto del error, usa ON ERROR RESUME NEXT , como lo explican es este hilo

http://www.forosdelweb.com/f15/consu...e-next-527078/

espero te sirva
  #6 (permalink)  
Antiguo 03/12/2008, 07:03
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 4 meses
Puntos: 126
Respuesta: Problema con UpDate

Hola

¿Y si es un problema de tipos?

Prueba así

WHERE idp = " & CInt(Request.form("f_id")) & "

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #7 (permalink)  
Antiguo 03/12/2008, 09:29
Avatar de GUAPOBEN  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico DF
Mensajes: 204
Antigüedad: 22 años, 5 meses
Puntos: 1
Respuesta: Problema con UpDate

Buenos dias a todos.

De antemano muchas gracias por su respuestas a este post, ayer depues de intentar varias cosas lo pude resolver sin embargo no creo que haya sido la mejor solución, apenas hasta hoy pude ver las demas respuestas que seguramente me hubieran ayudado y que sin duda guardare para futuros problemas.

La solución que aplique y con la que quedo fue en no cachar directo los datos como lo estaba haciendo es decir quite los Request.form y cree variables que cacharan el dato y lo agregaran al update, así:

f_ev = Request.Form("f_ev")
f_id = Request.Form("f_Id")
f_ne = Request.Form("f_ne")
f_aute = Request.Form("f_aute")

UPDATE retro SET ev = '" & f_ev & "', ne = '" & f_ne & "', aute = '" & f_aute & "' WHERE IDp = " & f_Id & ";"

Y asi quedo resuelto, en fin no se por que a final de cuentas cro que es lo mismo pero asi si funciono el UPDATE.

Gracias a todos por su aporte.

Saludos cordiales.
__________________
Guapo Ben
Servidor y Amigo :adios:
  #8 (permalink)  
Antiguo 03/12/2008, 10:27
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: Problema con UpDate

pues cada quien programa de la forma que mejor le salga

un consejo mas seria que buscaras en el foro (en las faqs) hay una muy buena funcion de limpiar cadena para evitar que te hagan SQL Injection en las variables

por ejemplo podrias incluso

Código asp:
Ver original
  1. f_ev = limpiar_cadena(Request.Form("f_ev"))
  2. f_id = limpiar_cadena(Request.Form("f_Id"))
  3. '...
  4. sql= "UPDATE retro "
  5. sql = sql & "SET ev = '" & f_ev & "' "
  6. sql = sql & "WHERE IDp = " & f_Id & ";"
  7. 'ejecutar tu SQL
.

luego para depurar y para que podamos ayudarte sera mejor ver el código un poco mas ordenado - en mi opinión -

suerte
__________________
JuanRa Pérez
San Salvador, El Salvador
  #9 (permalink)  
Antiguo 03/12/2008, 12:11
Avatar de GUAPOBEN  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico DF
Mensajes: 204
Antigüedad: 22 años, 5 meses
Puntos: 1
De acuerdo Respuesta: Problema con UpDate

Gracias por el Tip JuanRAPerez lo voy a aplicar.

Saludos cordiales.
__________________
Guapo Ben
Servidor y Amigo :adios:
  #10 (permalink)  
Antiguo 03/12/2008, 12:20
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: Problema con UpDate

bueno me alegra te sirva de algo

suerte
__________________
JuanRa Pérez
San Salvador, El Salvador
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 04:40.