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

Mostrar resultados de una tabla con un for

Estas en el tema de Mostrar resultados de una tabla con un for en el foro de ASP Clásico en Foros del Web. Hola, quiero mostrar resultados de una tabla, y quiero mostrar 3 resultados en la misma linea, para que me entendais, quiero meterlos en 3 td ...
  #1 (permalink)  
Antiguo 25/10/2009, 11:10
 
Fecha de Ingreso: junio-2004
Mensajes: 47
Antigüedad: 20 años, 9 meses
Puntos: 0
Mostrar resultados de una tabla con un for

Hola, quiero mostrar resultados de una tabla, y quiero mostrar 3 resultados en la misma linea, para que me entendais, quiero meterlos en 3 td en la misma linea y una vez llege a los 3 salte el el /tr.

este es el codigo que tengo que me muestra de 1 en 1

Cita:
<table><tr><td>

<%


Dim oConn, RS, leyenda, foto

set oConn=server.createobject("ADODB.connection")
set rs=server.createobject("ADODB.Recordset")
oConn.open("DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.Mappath("bd1.mdb"))

rs.Open "tabla",oConn
do until rs.EOF


foto=rs.Fields("foto")
leyenda=rs.Fields("leyenda")


Response.Write("<td><table width='23%' height='99' border='1' align='center' cellpadding='1' cellspacing='1'><tr><td><div class='eltexto1'>")
Response.Write("<div align='center'><a href='imagenes/" & foto & "'> <img src='imagenes/" & foto & "' width='106' height='121' border='0' id='img-mwsf-14' class='photo'></a></div></div></td>")
Response.Write("</tr><tr><td bgcolor='#9D785B'><div class='eltexto2'><div align='center'>" & leyenda & "</div></div></td></tr></table> ")

rs.MoveNext
loop
rs.close
Set rs = Nothing
oConn.close
Set oConn = Nothing

%>

</td></tr>

</table>
Gracias y espero que me ayudeis, pues soy un poco torpe para los for.

Última edición por nene16803; 25/10/2009 a las 11:49 Razón: confusion del titulo
  #2 (permalink)  
Antiguo 25/10/2009, 12:05
 
Fecha de Ingreso: enero-2008
Ubicación: Málaga - España
Mensajes: 346
Antigüedad: 17 años, 2 meses
Puntos: 13
Respuesta: Mostrar resultados de una tabla con un for

¿Recuerdas como te sugerí que lo hicieses con los fichero?

forosdelweb.com/f15/como-mostrar-tablas-contenido-carpeta-745146/

Pues es lo mismo. Haz un intento, que verás como se te sale.

Suerte !!
  #3 (permalink)  
Antiguo 25/10/2009, 12:34
 
Fecha de Ingreso: junio-2004
Mensajes: 47
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Mostrar resultados de una tabla con un for

ya lo he intentado............. pero me da error aun cambiando las variables
  #4 (permalink)  
Antiguo 25/10/2009, 15:23
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 3 meses
Puntos: 126
Respuesta: Mostrar resultados de una tabla con un for

Hola

Prueba con esto

Código asp:
Ver original
  1. <%
  2. Dim total_registros_encontrados, j, temp, x, arreglo, i
  3. total_registros_encontrados = 52
  4.  
  5. For j = 0 to CInt(total_registros_encontrados) Step 5
  6. temp = temp & " " & j
  7. Next 'j
  8.  
  9. arreglo = Split(Replace(Trim(temp), " ", ","),",")
  10.  
  11. For x = 0 to UBound(arreglo)
  12. arreglo(x) = arreglo(x)
  13. Next
  14. %>
  15.  
  16. <table border="1">
  17. <tr>
  18.  
  19. <%
  20. For i = 1 to CInt(total_registros_encontrados)
  21. Response.Write "<td>" & i & "</td>"
  22. If i Mod 5 = 0 Then
  23. Response.Write "</tr><tr>"
  24. End If
  25. Next 'i
  26.  
  27. %>
  28. </tr>
  29. </table>

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 25/10/2009, 16:10
 
Fecha de Ingreso: junio-2004
Mensajes: 47
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Mostrar resultados de una tabla con un for

Hola, ante todo muchas gracias por contestarme. Estoy mirando el codigo, y funciona perfectamente, mostrando los numeros. Lo que nos entiendo, es donde tengo que remplazar el codigo que quiero poner yo, y por que me mustra hasta el numero 52.
Te agradeceria si me puedes ayudar un poco mas.
Saludos
  #6 (permalink)  
Antiguo 25/10/2009, 16:22
 
Fecha de Ingreso: junio-2004
Mensajes: 47
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Mostrar resultados de una tabla con un for

hola de nuevo, este es el codigo que que he puesto, y me sale el mismo registro en la misma linea.
Cita:

<%

Dim total_registros_encontrados, j, temp, x, arreglo, i, oConn, RS


set oConn=server.createobject("ADODB.connection")
set rs=server.createobject("ADODB.Recordset")
oConn.open("DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.Mappath("bd1.mdb"))

rs.Open "tabla",oConn
do until rs.EOF


foto=rs.Fields("foto")
leyenda=rs.Fields("leyenda")


total_registros_encontrados = 3

For j = 0 to CInt(total_registros_encontrados) Step 3
temp = temp & " " & j
Next 'j

arreglo = Split(Replace(Trim(temp), " ", ","),",")

For x = 0 to UBound(arreglo)
arreglo(x) = arreglo(x)
Next
%>
<table border="1"><tr>
<%

For i = 1 to CInt(total_registros_encontrados)

'Response.Write "<td>" & i & "</td>"
Response.Write("<td><table width='23%' height='99' border='1' align='center' cellpadding='1' cellspacing='1'><tr><td><div class='eltexto1'>")
Response.Write("<div align='center'><a href='imagenes/" & foto & "'> <img src='imagenes/" & foto & "' width='106' height='121' border='0' id='img-mwsf-14' class='photo'></a></div></div></td>")
Response.Write("</tr><tr><td bgcolor='#9D785B'><div class='eltexto2'><div align='center'>" & leyenda & "</div></div></td></tr></table> ")

If i Mod 3 = 0 Then

Response.Write "</tr><tr>"

End If
Next 'i
%>
</tr> </table>
<%
rs.MoveNext
loop
rs.close
Set rs = Nothing
oConn.close
Set oConn = Nothing
%>
</td></tr></table>
  #7 (permalink)  
Antiguo 25/10/2009, 17:34
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 1 mes
Puntos: 88
Respuesta: Mostrar resultados de una tabla con un for



al parecer este es el tipico caso para poder utilizar este tipo de sentencias

Utilizar GetRows

solo cambia las partes del HTML, no toques el codigo ASP, y te dara tus resultados en una tabla
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #8 (permalink)  
Antiguo 25/10/2009, 17:57
 
Fecha de Ingreso: junio-2004
Mensajes: 47
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Mostrar resultados de una tabla con un for

Hola, gracias de nuevo, pero ya habia probado ese codigo, y muestra toda la tabla en una sola linea, no puedo meter los registros consecutivos hasta el 3, y luego me ponga un tr y salte a otro tr y otros 3 td
Gracias
  #9 (permalink)  
Antiguo 26/10/2009, 04:43
 
Fecha de Ingreso: enero-2008
Ubicación: Málaga - España
Mensajes: 346
Antigüedad: 17 años, 2 meses
Puntos: 13
Respuesta: Mostrar resultados de una tabla con un for

nene16803 te contesto en público, porque así podemos ayudar a más personas que tengan la misma duda.

Verás, veo que tienes una especie de "follón" con el código.

Vamos a tu código original, el del primer post.

primera línea:
Abres una tabla,
abres una fila,
abres una celda

despues creas la conexión y en el do--loop pues abres otra celda, para abrir luego una tabla que a su vez tiene un div...... no sé.. lo veo todo muy liado.

Creo que primero tendrías que aclarar el código, para luego si quieres darle formato.
Esto es un consejo de como yo lo hago.
1º hago el código y compruebo que funciona
2º lo pongo "bonito"

Te voy a simplificar tu código con el primero que pusiste, comprueba que te funciona y luego lo pones "bonito".

<table>
<tr>

<%

Dim oConn, RS, leyenda, foto
set oConn=server.createobject("ADODB.connection")
set rs=server.createobject("ADODB.Recordset")
oConn.open("DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.Mappath("bd1.mdb"))

rs.Open "tabla",oConn

cantidad_de_tds = 1
do until rs.EOF

foto=rs.Fields("foto")
leyenda=rs.Fields("leyenda")

if cantidad_de_tds = 3 then
response.write "</tr><tr>"
cantidad_de_tds = 1
else
Response.Write "<td><a href='imagenes/" & foto & "'> <img src='imagenes/" & foto & "' width='106' height='121' border='0' id='img-mwsf-14' class='photo'></a> <br>" & leyenda & "</td>"
cantidad_de_tds = cantidad_de_tds + 1
end if


rs.MoveNext
loop

rs.close
Set rs = Nothing
oConn.close
Set oConn = Nothing

%>

</tr>

</table>

he supuesto que "leyenda" es un título de la imagen y te lo he puesto justo debajo de cada imagen.

Suerte !!
  #10 (permalink)  
Antiguo 26/10/2009, 06:27
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 3 meses
Puntos: 126
Respuesta: Mostrar resultados de una tabla con un for

Hola

Otro ejemplo aplicando lo que mencionaba el maestro sensei

En este caso se muestra 5 columnas por fila. Y por cada registro se muestra 3 campos

Código asp:
Ver original
  1. <%
  2. Dim registros, i, id, referencias, color
  3. id= 0
  4. referencias = 1
  5. color = 2
  6.  
  7.  
  8. SQL = "Select id, referencias, color from tabla"
  9. set rs = oConn.Execute(SQL)
  10. registros = rs.getrows()
  11. rs.Close
  12. Set rs = Nothing
  13. %>
  14.  
  15. <table border="0" cellspadding="0px" cellspacing="1px" bgcolor="red">
  16. <tr>
  17. <td bgcolor="#F4F4F4">ID</td><td bgcolor="#C9C9C9">REFERENCIA</td><td bgcolor="#A4A4A4">COLOR</td><td bgcolor="#F4F4F4">ID</td><td bgcolor="#C9C9C9">REFERENCIA</td><td bgcolor="#A4A4A4">COLOR</td><td bgcolor="#F4F4F4">ID</td><td bgcolor="#C9C9C9">REFERENCIA</td><td bgcolor="#A4A4A4">COLOR</td><td bgcolor="#F4F4F4">ID</td><td bgcolor="#C9C9C9">REFERENCIA</td><td bgcolor="#A4A4A4">COLOR</td><td bgcolor="#F4F4F4">ID</td><td bgcolor="#C9C9C9">REFERENCIA</td><td bgcolor="#A4A4A4">COLOR</td>
  18. </tr>
  19. <tr>
  20. <%
  21. For i = 0 to UBound(registros,2)
  22. If i Mod 5 = 0 Then
  23. Response.Write "</tr><tr>"
  24. End If
  25. Response.Write "<td bgcolor=""#F4F4F4"">" & registros(id,i) & "</td><td bgcolor=""#C9C9C9"">" & registros(referencias,i) & "</td><td bgcolor=""#A4A4A4"">" & registros(color,i) & "</td>"
  26. Next 'i
  27. %>
  28. </tr>
  29. </table>

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #11 (permalink)  
Antiguo 27/10/2009, 12:41
 
Fecha de Ingreso: junio-2004
Mensajes: 47
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Mostrar resultados de una tabla con un for

MUCHISIMAS GRACIAS ... Por fin .... gracias a todos de verdad.
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 13:50.