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

Atascado con un codigo

Estas en el tema de Atascado con un codigo en el foro de ASP Clásico en Foros del Web. Hola de nuevo . Vereis necesito hacer un codigo que me contabilize el numero de sets a favor y en contra que lleva un equipo ...
  #1 (permalink)  
Antiguo 26/09/2003, 03:37
 
Fecha de Ingreso: mayo-2003
Mensajes: 31
Antigüedad: 22 años
Puntos: 0
Atascado con un codigo

Hola de nuevo . Vereis necesito hacer un codigo que me contabilize el numero de sets a favor y en contra que lleva un equipo en una liga de voleibol. Entonces se me habia ocurrido coger de mi tabla partidos todos aquellos partidos en que el equipo participe ya sea local y visitante, y luego dependiendo de esto le aputos los sets a favor o en contra. asi 14 veces que es el numero de equipos que hay. Se me ha ocurrido esto

Código:
dim i,favor,contra
For i=1 to 14 
sql="select * from partidos where local=i or visitante=i"
set miconexion=conexion.execute(sql)
do while not miconexion.eof
if miconexion("local")=i then
	favor=miconexion("res_local")
	contra=miconexion("res_visitante")
end if
if miconexion("visitante")=i then 
	favor=miconexion("res_visitante")
	contra=miconexion("res_local")
end if
actualiza="update equipos set sets_a_favor=sets_a_favor+favor,sets_en_contra=sets_en_contra+contra where id_equipo=i"
conexion.execute(actualiza)
miconexion.movenext
loop
next
miconexion.close
%>
el caso es que se que queda en el primer select porque dice que no recibe parametros y si cambio los i por 1 a ver que ocurre se queda en el update tambien diciendo que no recibe parametros.

Que estoy haciendo mal?

Gracias
  #2 (permalink)  
Antiguo 26/09/2003, 03:53
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
Hola

pues el problema es que no estas creando bien la consulta SQL...
lo que estas haciendo es pasarle el literal i a la consulta, en lugar del valor de la variable asp del mismo nombre (i)

en lugar de
sql="select * from partidos where local=i or visitante=i"
pon
sql="select * from partidos where local="&i&" or visitante=" & i

y con la otra te pasa lo mismo, cambia esto...

actualiza="update equipos set sets_a_favor=sets_a_favor+favor,sets_en_contra=set

por esto

actualiza="update equipos set sets_a_favor=sets_a_favor+" & favor&",sets_en_contra=set


suerte
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #3 (permalink)  
Antiguo 26/09/2003, 04:37
Avatar de chesco1980  
Fecha de Ingreso: enero-2003
Mensajes: 82
Antigüedad: 22 años, 3 meses
Puntos: 1
nazkatuta


tiene toda la razon estoy contigo. Lo que pasa es debido a las sentencias sql que cogen las variables que le manda como texto y al intentar hacer la consulta se encuentra que no tiene nada que consultar.

--------
__________________
Si no fuera por estos raticos y algunos mas. :borracho:
  #4 (permalink)  
Antiguo 26/09/2003, 04:56
 
Fecha de Ingreso: mayo-2003
Mensajes: 31
Antigüedad: 22 años
Puntos: 0
muchas gracias, era eso, pero ahora me da error de sintaxis en sets_a_favor+
  #5 (permalink)  
Antiguo 26/09/2003, 05:00
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
separa sets_a_favor del + y asegurate de que la variable favor no esté vacia.
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #6 (permalink)  
Antiguo 26/09/2003, 05:10
 
Fecha de Ingreso: mayo-2003
Mensajes: 31
Antigüedad: 22 años
Puntos: 0
nada, lo separo e igual y la variable favor no esta vacia.Esto me sale

Error de sintaxis (falta operador) en la expresión de consulta 'sets_a_favor +'.
  #7 (permalink)  
Antiguo 26/09/2003, 07:06
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
Puedes poner toda la consuta?
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #8 (permalink)  
Antiguo 26/09/2003, 07:12
 
Fecha de Ingreso: mayo-2003
Mensajes: 31
Antigüedad: 22 años
Puntos: 0
Claro

Código:
actualiza="update equipos set sets_a_favor=sets_a_favor +"&favor&",sets_en_contra=sets_en_contra +"&contra&" where id_equipo="&i&""
conexion.execute actualiza
  #9 (permalink)  
Antiguo 26/09/2003, 07:15
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
Uf,

prueba separando tambien el + del valor, así

actualiza="update equipos set sets_a_favor=sets_a_favor + "&favor&",sets_en_contra=sets_en_contra + "&contra&" where id_equipo="&i

a ver si hay suerte, jeje
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #10 (permalink)  
Antiguo 26/09/2003, 07:30
 
Fecha de Ingreso: mayo-2003
Mensajes: 31
Antigüedad: 22 años
Puntos: 0
nada, tampoco argggggg, ya no se que puede ser
  #11 (permalink)  
Antiguo 26/09/2003, 07:32
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
Supongo que sets_a_favor es un campo numerico, no?

podrias hacer un response.write de actualizaicones y poner aqui lo que te sale?
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #12 (permalink)  
Antiguo 26/09/2003, 08:07
 
Fecha de Ingreso: mayo-2003
Mensajes: 31
Antigüedad: 22 años
Puntos: 0
Corrijo lo de antes pk puesto este codigo para ejemplo id=1, sobre 14 jorandas introducidas pero solo las 2 primeras con resultados me saca esto

F:
C:
F:0
C:0
F:2
C:3
F:3
C:2
etc..... sin ningun valor hasta las jornada 14, obviamente no hay resultado

Recuerso k ahora el codigo seria

Código:
<%

dim i,favor,contra
For i=1 to 1 
sql="select * from partidos where local="&i&" or visitante="&i&""
set miconexion=conexion.execute(sql)
do while not miconexion.eof
if miconexion("local")=i then
	favor=miconexion("res_local")
	contra=miconexion("res_visitante")
end if
if miconexion("visitante")=i then 
	favor=miconexion("res_visitante")
	contra=miconexion("res_local")
end if
response.write "F:"& favor & "<br>"
response.write "C:"& contra & "<br>"

miconexion.movenext
loop
next
miconexion.close
%>
Ahora la pregunta es, pk esos 2 primeros valores vacios y lueggo esos 0 antes del resultado del primer aprtido y segundo?

Última edición por flipudez; 26/09/2003 a las 08:14
  #13 (permalink)  
Antiguo 26/09/2003, 08:22
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
Estas seguro de que todos los registros de la tabla "partidos" tiene valor?

haz un response.write de miconexion("res_local") y miconexion("res_visitante")
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #14 (permalink)  
Antiguo 26/09/2003, 08:39
 
Fecha de Ingreso: mayo-2003
Mensajes: 31
Antigüedad: 22 años
Puntos: 0
exacto,era eso!!!se habia kedado una jornada k no tenia ceros en los resultados, ahora ya estan todos y no da error, pero porque los 2 primeros valores de favor contra son 0 si el primer partido es el 3-2????

F:0
C:0
F:0
C:0
F:3
C:2
  #15 (permalink)  
Antiguo 26/09/2003, 08:54
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
anda ke no ha costado!

:o)
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #16 (permalink)  
Antiguo 26/09/2003, 09:54
 
Fecha de Ingreso: mayo-2003
Mensajes: 31
Antigüedad: 22 años
Puntos: 0
po si,po si , aunk me sigue moskeando pk slaen 2 0-0 antes del primer resultado, observare a ve

Gracias
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:56.