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

Recoger variables de formulario complejo

Estas en el tema de Recoger variables de formulario complejo en el foro de ASP Clásico en Foros del Web. Atención, pregunta: 1.- Dibujo una tabla donde muestro los campos de una base de datos. Cada fila contiene dos campos, el ID del registro y ...
  #1 (permalink)  
Antiguo 21/09/2007, 10:40
 
Fecha de Ingreso: noviembre-2003
Ubicación: Madrid
Mensajes: 353
Antigüedad: 21 años, 5 meses
Puntos: 1
Recoger variables de formulario complejo

Atención, pregunta:

1.- Dibujo una tabla donde muestro los campos de una base de datos. Cada fila contiene dos campos, el ID del registro y otro con el valor X

Ejemplo:


Id Valor

1 5
2 7
3 9

Donde los campos de Valor son campos de texto para un formulario de actualización.


2.- Cuando pinto los valores del campo X, lo hago con un input de formulario, para que el usuario pueda modificar su valor (Es numérico) y con un solo botón, envie todos los valores para luego actualizar con los nuevos valores la base de datos.

Imagino que será un bucle, pero no tengo claro como hacerlo, ya que necesito recoger los dos valores, el Id y el valor X, para luego actualizar el valor x correspondiente a su Id.

¿El premio a quien sepa la respuesta? Hoy envio empanadilla de queso a domicilo y regalo bolsita usada de manzanilla. ;)

Gracias!!
__________________
Lo menos frecuente en este mundo es vivir. La mayoría de la gente existe, eso es todo...
  #2 (permalink)  
Antiguo 21/09/2007, 10:53
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Re: Recoger variables de formulario complejo

Suelo hacer esto:

Esta es la página que genera el formulario con los datos de la BD:
Código:
<form ...>
<%
i = 0
while not rs.eof
%>
<input type="hidden" name="id_<% = i %>" id="id_<% = i %>" value="<% = rs("campo_id") %>" />
<input type="text" name="valor_<% = i %>" id="valor_<% = i %>" value="<% = rs("campo_valor") %>" /><br />
<%
i = i + 1
wend
%>
<input type="hidden" name="cantidad" id="cantidad" value="<% = i %>" />
<input type="submit" name="guardar" id="guardar" />
</form>
Y esta la página que los procesa:
Código:
set conexión = server....
cantidad = request.form("cantidad")
for i = 0 to cantidad
sql = "UPDATE tabla SET campo_valor = '" & request.form("valor_" & i) & "' WHERE campo_id = " & request.form("id_" & i)
conexión.execute(sql)
next

Espero te sirva
__________________
...___...
  #3 (permalink)  
Antiguo 21/09/2007, 13:22
 
Fecha de Ingreso: noviembre-2003
Ubicación: Madrid
Mensajes: 353
Antigüedad: 21 años, 5 meses
Puntos: 1
Re: Recoger variables de formulario complejo

Gracias , lo estoy probando pero me dice esta grosería:

No coinciden los tipos: '[string: "0, 1, 2"]'

Lo dice al ejecutar este código:

cantidad = request.form("cantidad")
for i = 0 to cantidad



¿Te suena?
__________________
Lo menos frecuente en este mundo es vivir. La mayoría de la gente existe, eso es todo...
  #4 (permalink)  
Antiguo 21/09/2007, 14:01
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Re: Recoger variables de formulario complejo

Mmm... no recuerdo si el error es que no existe el último índice (2) dentro del array o ese error reza algo así como "el índice está fuera del intervalo"... dejá que pruebo...
__________________
...___...
  #5 (permalink)  
Antiguo 21/09/2007, 14:11
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Re: Recoger variables de formulario complejo

Ya, aparentemente tenés como value del input llamado "cantidad" el valor 0, 1, 2 cuando deberías tener sólo el valor numérico 2.

Hacé una cosa para verlo. A la siguiente línea:
Código:
<input type="hidden" name="cantidad" id="cantidad" value="<% = i %>" />
cambiala por:
Código:
<input type="text" name="cantidad" id="cantidad" value="<% = i %>" />
y verificá que sólo muestre un número

Otra cosa, puede que esta línea:
Código:
for i = 0 to cantidad
en realidad deba ser:
Código:
for i = 0 to cantidad - 1 
Avisá
__________________
...___...
  #6 (permalink)  
Antiguo 21/09/2007, 15:23
 
Fecha de Ingreso: noviembre-2003
Ubicación: Madrid
Mensajes: 353
Antigüedad: 21 años, 5 meses
Puntos: 1
Re: Recoger variables de formulario complejo

¡¡Funciona!! Fué un error mío, metí el campo de "cantidad" dentro del "while" , por eso no tenía un solo valor, me he dado cuenta al leer tu respuesta.

Oye, muchas gracias, me traía de cabeza este tema.

¿A donde quieres que te envie la bolsita de manzanilla?.

En serio, gracias!!
__________________
Lo menos frecuente en este mundo es vivir. La mayoría de la gente existe, eso es todo...
  #7 (permalink)  
Antiguo 21/09/2007, 15:30
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Re: Recoger variables de formulario complejo

de nada ;)
__________________
...___...
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:31.