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

Problema con formulario de actualizaciones

Estas en el tema de Problema con formulario de actualizaciones en el foro de ASP Clásico en Foros del Web. Tengo el siguiente codigo lo copia tal como estaba en internet, pero tengo un problema cuando le doy el numero de registro a buscar me ...
  #1 (permalink)  
Antiguo 09/08/2004, 11:49
 
Fecha de Ingreso: agosto-2004
Ubicación: Tijuana, Baja California, Mexico
Mensajes: 72
Antigüedad: 20 años, 9 meses
Puntos: 0
Problema con formulario de actualizaciones

Tengo el siguiente codigo lo copia tal como estaba en internet, pero tengo un problema cuando le doy el numero de registro a buscar me marca el siguiente error:

Error Type:
Microsoft VBScript compilation (0x800A0400)
Expected statement
/troncob/MODIFICARUSUARIO.asp, line 13
<form action="Mod.asp" method="post">


Browser Type:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)

Page:
POST 6 bytes to /troncob/MODIFICARUSUARIO.asp

POST Data:
fId=29

cuando le pongo un registro que no existe de todas maneras me manda ese error, como estoy trabajando con dreamweaver no me muestra la forma en la vista de diseño tampoco, lo que necesito es que por medio de un formulario muestre los datos de una tabla y se puedan actualizar desde ese mismo formulario.


buscarusuario.asp
<form action="MODIFICARUSUARIO.asp" method="post">
<input type="text" name="fId">
<input type="submit" value="buscar"></form>

modificarusuario.asp
<%
Id=request.Form("fId") 'Rescatamos el id

Set conn=Server.CreateObject("ADODB.Connection")
conn.open "Mibase"
Set registros=Server.CreateObject("ADODB.Recordset")
registros.open "SELECT * from TRAFICOS where (numrep= '" & Id & "')",conn

If registros.EOF Then 'Vemos si existe el id
%>
<script>
alert("Este usuario no existe");
window.location = "BuscarUsuario.asp";
</script>

<%
Else

'Mostramos los datos de ese id en un formulario donde el id no se podrá modificar y el resto sí.

<form action="Mod.asp" method="post">
ID: <input type="text" readonly name="fId">
Clave: <input type="text" name="fC1">
Fecha: <input type="text" name="fC2">
factura: <input type="text" name="fC3">
<input type="submit" value="Modificar">
</form>
'C1,C2,C3 son tus otros 3 campos de la BBDD
End if
registros.close
Set registros=Nothing
conexion.close
Set conexion=Nothing
%>


mod.asp
<%
dim conexion,sql

Set conexion=Server.CreateObject("ADODB.Connection")

conexion.open "Mibase"

sql = "UPDATE TRAFICOS SET id='" & request.Form("fId") & "', cve_cte='" & request.Form("fC1") & "',"

sql = sql & "fecha_t='" & request.Form("fC2") & "',num_fac_t='" & request.Form("fC3") & "'"

sql = sql & " WHERE Id='" & request.form("fId") & "'"

conexion.execute sql
%>
<script>
alert("Los datos de este usuario han sido modificados con éxito");
window.location = "Tu_pagina.asp";
</script>
<%
End if
conexion.close
Set conexion=Nothing
%>
  #2 (permalink)  
Antiguo 09/08/2004, 11:55
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Bueno, si lo tienes tal como esta arriba, te falta cerrar el asp cuando pintas el formulario:
%>
<form action="Mod.asp" method="post">
ID: <input type="text" readonly name="fId">
Clave: <input type="text" name="fC1">
Fecha: <input type="text" name="fC2">
factura: <input type="text" name="fC3">
<input type="submit" value="Modificar">
</form>
<%

Saludos
  #3 (permalink)  
Antiguo 09/08/2004, 17:23
 
Fecha de Ingreso: agosto-2004
Ubicación: Tijuana, Baja California, Mexico
Mensajes: 72
Antigüedad: 20 años, 9 meses
Puntos: 0
Gracias eso resulto pero ahora tengo otro problema me marca el siguiente error Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
/troncob/MODIFICARUSUARIO.asp, line 8

estoy pidiendo al usuario el campo autonumerico y sobre ese campo hago la consulta creo que tengo el error aqui pero ya le movi y nada

7 Set registros=Server.CreateObject("ADODB.Recordset")
8 registros.open "SELECT * from TRAFICOS where (numrep= '" & Id & "')",conn
  #4 (permalink)  
Antiguo 09/08/2004, 17:31
 
Fecha de Ingreso: agosto-2004
Ubicación: Tijuana, Baja California, Mexico
Mensajes: 72
Antigüedad: 20 años, 9 meses
Puntos: 0
Gracias eso resulto pero ahora tengo otro problema me marca el siguiente error Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
/troncob/MODIFICARUSUARIO.asp, line 8

estoy pidiendo al usuario el campo autonumerico y sobre ese campo hago la consulta creo que tengo el error aqui pero ya le movi y nada

7 Set registros=Server.CreateObject("ADODB.Recordset")
8 registros.open "SELECT * from TRAFICOS where (numrep= '" & Id & "')",conn
  #5 (permalink)  
Antiguo 09/08/2004, 17:34
Avatar de skatomundo  
Fecha de Ingreso: junio-2002
Ubicación: Santiago - CL
Mensajes: 2.532
Antigüedad: 22 años, 10 meses
Puntos: 125
<%
Id = request.Form("fId")

Set conn=Server.CreateObject("ADODB.Connection")
conn.open "Mibase"

Set registros=Server.CreateObject("ADODB.Recordset")
registros.open "SELECT * from TRAFICOS where (numrep= '" & cdbl(Id) & "')",conn

'..
%>
Usando CDBl para forzarlo a Numero puede ser...
  #6 (permalink)  
Antiguo 10/08/2004, 08:49
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Cita:
...estoy pidiendo al usuario el campo autonumerico ...
Entonces los apostrofes estan de mas:

registros.open "SELECT * from TRAFICOS where numrep= " & Id,conn
  #7 (permalink)  
Antiguo 10/08/2004, 09:32
 
Fecha de Ingreso: agosto-2004
Ubicación: Tijuana, Baja California, Mexico
Mensajes: 72
Antigüedad: 20 años, 9 meses
Puntos: 0
Le intente con el cdbly me sigue marcando este error

Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
/troncob/MODIFICARUSUARIO.asp, line 8

con " &id, conn me marca error de expresion,

la consulta que hago es por medio del autonumerico, no se si tenga que validar algo?
  #8 (permalink)  
Antiguo 10/08/2004, 09:39
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Si haces:

sql = "SELECT * from TRAFICOS where numrep= " & Id
response.write sql

Copias y pegas esa salida en el analizador de consultas de tu motor de BD podrás ver si el problema es por los tipos (que no lo es) o por si tienes caracteres no numericos en Id.

Si sigue sin funcionar, paga la salida de ese response.write para ver que te forma.
  #9 (permalink)  
Antiguo 11/08/2004, 18:13
 
Fecha de Ingreso: agosto-2004
Ubicación: Tijuana, Baja California, Mexico
Mensajes: 72
Antigüedad: 20 años, 9 meses
Puntos: 0
lo que menos crei que fuera resulto, borre el campo id de mi base y cree otro campo igual id autonumerico, y funciono, la duda que tengo es porque funciono?,
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 11:18.