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

if anidados en asp

Estas en el tema de if anidados en asp en el foro de ASP Clásico en Foros del Web. Hola como he mencionado antes soy super nueva en esto de la programada; creo que esto puede ser algo muy sencillo pero a mi de ...
  #1 (permalink)  
Antiguo 25/09/2007, 12:03
 
Fecha de Ingreso: septiembre-2007
Mensajes: 93
Antigüedad: 17 años, 7 meses
Puntos: 0
if anidados en asp

Hola como he mencionado antes soy super nueva en esto de la programada; creo que esto puede ser algo muy sencillo pero a mi de plano no me sale; si alguien de ustedes me puede orientar;lo que quiero hacer es que me arroje una estadisticas por medio de la base de datos; Por ejemplo:
si tengo en mi base de datos una tabla donde es de gatos; lo que quiero saber cuantos gatos tengo de color negro; blanco y beige y que ese numero que me arroje me ligue a otra pagina donde ya ahi este mas detallado las caracteristicas de cada uno de ellos; alguien me puede decir como aserlo; plissss
  #2 (permalink)  
Antiguo 25/09/2007, 16:03
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
Re: if anidados en asp

En tu base de datos tienes un registro por cada gato ¿verdad?, y supongo tienes un campo que dice el color, entonces debes contar de forma agrupada:

Código:
set rsGatos = Server.CreateObject("ADODB.RecordSet")
sql = "SELECT Color, COUNT(Color) FROM Gatos GROUP BY Color "
rsGatos.Open sql, ObjConnection
Eso te regresará un registro por cada color y el total de registros que corresponden a cada color.

Los pintas y haces el ancla correspondiente:

<a href="detalleGatos.asp?Color=<%=rsGatos("Color")%> "><%=rsGatos("Color")%></a>

En detalleGatos.asp recibes el parámetro Color con un Response.QueryString("Color") y lo buscas en la BD:

Código:
set rsGatos = Server.CreateObject("ADODB.RecordSet")
sql = "SELECT * FROM Gatos WHERE Color = '" & Request("Color") & "'"
rsGatos.Open sql, ObjConnection
Y listo


Saludos
  #3 (permalink)  
Antiguo 25/09/2007, 16:23
 
Fecha de Ingreso: septiembre-2007
Mensajes: 93
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: if anidados en asp

Hola Myakire tratare de hacer lo que me dices y luego te informo que onda; nadamas tengo una duda; por ejemplo tengo en mi tabla la especie nadamas, pero no tengo el color; ese es introducido por medio una lista menu a la base de datos; como le hago para hacer el enlace, tengo que hacer una tabla extra o que hago; plissss; ya sabes soy super nueva en esto

tambien por ejemplo que me muestre cuanto gatos que tengo de color negro; blanco y beige
y que ese numero me lleve a otra pag
si es negro son tantos
de lo contrario sin son blancos son tantos
y si no es negro ni blanco que me muestre los beiges; mi pregunta es como hago ese if anidado

Última edición por ariesagv; 25/09/2007 a las 16:35
  #4 (permalink)  
Antiguo 26/09/2007, 10: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
Re: if anidados en asp

El color lo debes de tener a fuerzas en alguna tabla, por lo que dices "espero" que tengas por lo menos el ID de la especie en la tabla donde tengas el color, entonces la consulta sería:

SELECT Color, COUNT(Color) FROM GatosColor GC INNER JOIN GatosEspecies GE ON GC.IdEspecie = GE.IdEspecie GROUP BY Color

El if anidado que mencionas no se necesita, la consulta te regresaría los colores de los gatos y haciendo una tabla con hipervínculos (como el ejemplo del primer post) se redirecciona al usuario al seleccionar el color que desee.

Pero igual, los IF anidados son así:

Código:
If Color="azul" Then
   If Color="verde" then
       ....
   Else
       ....
   End If
End If
Aunque no es la única forma de hacerlo, te recomiendo que busques sobre estructuras condicionales en vbscript: IF THEN ELSE, SELECT CASE, IF THEN ELSEIF

Saludos
  #5 (permalink)  
Antiguo 26/09/2007, 14:40
 
Fecha de Ingreso: septiembre-2007
Mensajes: 93
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: if anidados en asp

Cita:
Iniciado por Myakire Ver Mensaje
El color lo debes de tener a fuerzas en alguna tabla, por lo que dices "espero" que tengas por lo menos el ID de la especie en la tabla donde tengas el color, entonces la consulta sería:

SELECT Color, COUNT(Color) FROM GatosColor GC INNER JOIN GatosEspecies GE ON GC.IdEspecie = GE.IdEspecie GROUP BY Color

El if anidado que mencionas no se necesita, la consulta te regresaría los colores de los gatos y haciendo una tabla con hipervínculos (como el ejemplo del primer post) se redirecciona al usuario al seleccionar el color que desee.

Pero igual, los IF anidados son así:

Código:
If Color="azul" Then
   If Color="verde" then
       ....
   Else
       ....
   End If
End If
Aunque no es la única forma de hacerlo, te recomiendo que busques sobre estructuras condicionales en vbscript: IF THEN ELSE, SELECT CASE, IF THEN ELSEIF

Saludos
OK; TRATARE DE HACER LO QUE ME DICES; LUEGO TE INFORMO COMO ME FUE; SALUDOS
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 10:22.