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

Recibiendo variables con valores multiples

Estas en el tema de Recibiendo variables con valores multiples en el foro de ASP Clásico en Foros del Web. Cordial saludo, Estoy teniendo un problema con un ASP que he armado para una votacion, el mismo esta armando de la siguiente manera : ---- ...
  #1 (permalink)  
Antiguo 24/02/2009, 07:40
 
Fecha de Ingreso: febrero-2009
Mensajes: 3
Antigüedad: 16 años, 2 meses
Puntos: 0
Recibiendo variables con valores multiples

Cordial saludo,

Estoy teniendo un problema con un ASP que he armado para una votacion, el mismo esta armando de la siguiente manera :

---- Pregunta ----
--Respuesta1
--Respuesta2
--Respuesta3

Cada una de las respuestas genera un checkbox con el ID de la respuesta, este ide es unico , supongamos

46 para Respuesta1
47 para Respuesta2
48 para Respuesta3

Hasta aqui todo bien, me envia los valorores a otro asp para realizar el update de los votos y ahi es cuando falla,

el update es como el siguiente :

Código:
set rs = Conexion.Execute("UPDATE Enc_Respuestas SET Votos = Votos + 1 WHERE IDEncuesta = " & IDEnc & " AND ID = " & IDResp)
El problema es que la variable IDResp me esta devolviendo los 2 valores de los ID, ejemplo si tildo respuesta 1 y 3, seria 46 y 48, separado por comas , lo que me devuelve un error :

Código:
Microsoft OLE DB Provider for SQL Server error '80040e14' 

Line 1: Incorrect syntax near ','.
Como puedo corregir el Query para que al llegarle multiples valores en la variable IDResp, haga un update de 1 voto mas para cada uno de las respuestas ?

Desde ya muchas gracias
  #2 (permalink)  
Antiguo 24/02/2009, 08:32
 
Fecha de Ingreso: enero-2008
Mensajes: 614
Antigüedad: 17 años, 3 meses
Puntos: 57
Respuesta: Recibiendo variables con valores multiples

podrias utilizar la funcion SPLIT para separar la variable (te devuelve un arreglo) y despues un FOR para recorrer el arreglo y ejecutar el query
  #3 (permalink)  
Antiguo 24/02/2009, 09:19
 
Fecha de Ingreso: febrero-2009
Mensajes: 3
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Recibiendo variables con valores multiples

Por ejemplo :

IDresp2 = Split(IDresp, ",")

Y como usariaa las IDresp[0] IDresp[1] IDresp[2] en un for, para que en el caso de que exitan lo inserte en el update del query ?
  #4 (permalink)  
Antiguo 24/02/2009, 11:27
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
Respuesta: Recibiendo variables con valores multiples

Algo así:

Código:
IDresp2 = Split(IDresp, ",")

for i = 0 to ubound(IDresp2)
set rs = Conexion.Execute("UPDATE Enc_Respuestas SET Votos = Votos + 1 WHERE IDEncuesta = " & IDEnc & " AND ID = " & IDResp2(i))
set rs = nothing
next
__________________
...___...
  #5 (permalink)  
Antiguo 24/02/2009, 15:14
 
Fecha de Ingreso: febrero-2009
Mensajes: 3
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Recibiendo variables con valores multiples

Funciono perfectoooo !!!

Muchas gracias a todos !
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 06:59.