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

paginacion de galeria

Estas en el tema de paginacion de galeria en el foro de ASP Clásico en Foros del Web. hola a todos Os paso mi codigo para ver si alguien me puede ayudar, quiero hacer una paginacion que me muestre en una tabla 9 ...
  #1 (permalink)  
Antiguo 05/06/2005, 07:59
 
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 83
Antigüedad: 20 años, 10 meses
Puntos: 0
paginacion de galeria

hola a todos

Os paso mi codigo para ver si alguien me puede ayudar, quiero hacer una paginacion que me muestre en una tabla 9 fotos, 3 columnas por 3 filas, pero en mi codigo me sale 9 filas, a ver si alguien me ayuda para hacer la paginacion como yo quiero

codigo:

<!-- #include file="adovbs.inc" -->
<html>

<head>

<title>Galeria de Imagenes de www.asptutor.com</title>
<SCRIPT>
<!--
function displayWindow(url, width, height)
{
var Win = window.open(url,"displayWindow",'width=' + width + ',height=' + height + ',resizable=no,scrollbars=no,menubar=no,status=no' );
}
//-->
</SCRIPT>

</head>

<body bgcolor="#55B5F1">

<font color="#FFFFFF">
<%


set rs = CreateObject("ADODB.Recordset")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/xxxxx/images.mdb"))

rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic

sqltxt="SELECT * FROM images"

rs.Open sqltxt,conn
tamanopagina=3


paginaabsoluta=request.querystring("paginaabsoluta ")
if paginaabsoluta="" then
paginaabsoluta=1
end if
if paginaabsoluta=1 Then
inicio=1
else
inicio=1+(paginaabsoluta-1)*tamanopagina
end if

fin=inicio+tamanopagina-1
if fin > rs.recordcount then
fin =rs.recordcount
end if

rs.pagesize= cint(tamanopagina)
rs.absolutepage=cint(paginaabsoluta)



contador=1%>
<br>
<div align="center">
<center>
<table border="1" width="66%" bgcolor="#FFFFFF" bordercolor="#3399FF">
<tr>
<td width="50%" align="center" bgcolor="#C0C0C0">Imágenes <font color="#FF0000"><%=inicio%> </font>
a <font color="#FF0000"><%=fin%></font> de un total de
<font color="#FF0000"><%=rs.recordcount%></font></td>
<td width="50%" align="center" bgcolor="#C0C0C0">Página <font color="#FF0000"><%=paginaabsoluta%>
</font> de <font color="#FF0000"><%=rs.pagecount%></font></td>
</tr>
</table>
</center>
</div>

<br>

<% do while not rs.eof and contador <= cint(tamanopagina) %>
<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="4" width="40%" bgcolor="#C0C0C0">
<tr>
<td rowspan="3" width="25%">
<A HREF="javascript:displayWindow('showimg.asp?id=<%= RS("ID")%>',<%=RS("Width")%>,<%=RS("Height")%>)">
<img src="images/<%=RS("Images")%>.<%=RS("Filtype")%>" height=100 width=70 border=0 alt="Pulsa para ampliar"></a></td>
<td width="75%"><font size="1" face="Tahoma">Tipo de archivo: <strong><%= RS("Filtype")%></strong></font></td>
</tr>
<tr>
<td width="75%"><font size="1" face="Tahoma">Alto: <strong><%= RS("Height")%></strong>px
Ancho: <strong><%= RS("Width")%></strong>px</font></td>
</tr>
<tr>
<td width="75%"><font size="1" face="Tahoma">Descripción: <strong><%= RS("Description")%></strong> </font></td>
</tr>
</table>

</center>
</div>
<br>
<%rs.movenext

contador=contador+1

loop%>


<p align="center"><b>Pulsa en la página a la que deseas ir</b> </p>

<table align="center" bgcolor="#ffffff">

<tr>

<%j=0

if cint(paginaabsoluta) <> 1 then

atras=cint(paginaabsoluta)-1

response.write "<td align=center><a href=galeria.asp?tamanopagina="&tamanopagina&"&pag inaabsoluta=" & atras & ">"&"&lt;&lt;"&"</a></td>"

j=j+1

end if

for i = 1 to rs.pagecount

j=j+1

if j>20 then

response.write "</tr><tr>"

j=1

end if

if cint(i) = cint(paginaabsoluta) then

response.write "<td bgcolor=#00ff00 align=center>"&i&"</td>"

else

response.write "<td align=center><a href=galeria.asp?tamanopagina="&tamanopagina&"&pag inaabsoluta=" & i & ">"&i&"</a></td>"

end if

next %>

<%if cint(paginaabsoluta) <> rs.pagecount then

atras=cint(paginaabsoluta)+1

response.write "<td align=center><a href=galeria.asp?tamanopagina="&tamanopagina&"&pag inaabsoluta=" & atras & ">"&"&gt;&gt;"&"</a></td>"

end if%>

</tr>

</table>

<p align="center"> </font></p>

<p align="center"> </p>
<p align="right"><font face="Verdana" size="1">Galeria de imagenes de</font> <a href="http://www.asptutor.com" target="_blank"><img border="0" src="http://www.asptutor.com/images/asptutor88x31.gif" align="middle"></a></p>

</body>

</html>
  #2 (permalink)  
Antiguo 05/06/2005, 10:03
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años, 2 meses
Puntos: 9
Me parece que la mejor forma es con tablas anidadas, yo tenia un ejemplo sin tablas anidadas, pero el código que me quedaba en la página era demasiado grande, por eso me parece que la mejor solución es hacerlo con tablas anidadas. Te paso como tengo yo para que lo adaptes al tuyo.


<table border="0" width="600" align="center" cellpadding="0" cellspacing="0">
<tr>
<%
Counter = 0
For a=StartAt to EndAt
Counter = Counter + 1
if a > UBound(arrays,2) then
exit for
end if
%>
<td>
<table>
<tr>
<td width="200" height="140" align="center" valign="bottom" class="celda_imagen"><img src="<%=arrays(Imagen,a)%>" width="80" height="80"></td>
</tr>
<tr>
<td height="15" align="center"><a href="ver_mas.asp?id_prod=<%=arrays(Id,a)%>" title="más Info" class="producto"><%=Left(arrays(Nombre,a),18)%>... </a></td>
</tr>
<tr>
<td height="15" align="center" class="celda_descripcion">AR $ <%=arrays(Precio,a)%></td>
</tr>
<tr>
<td height="20" align="center"><a href="add.asp?cant=1&id=<%=CInt(arrays(Id,a))%>">< img src="Imágenes/comprar_button.jpg" border="0"></a></td>
</tr>
</table>
</td>
<%
if Counter = 3 then
Response.Write("</tr><tr>")
Counter = 0
end if
next
%>
</td>
</tr>
</table>

Un par de aclaraciones: vas a ver un par de variables que no vas a entender que funcion cumplen, pero no prestes atención a eso, sino en como se genera la tabla y en las variables que ayudan a generar esta tabla.

Saludos y espero que te haya servido de algo!.
Suerte!.
  #3 (permalink)  
Antiguo 05/06/2005, 13:33
 
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 83
Antigüedad: 20 años, 10 meses
Puntos: 0
Pues cinceramente no me aclaro mucho la verdad que no
  #4 (permalink)  
Antiguo 05/06/2005, 13:49
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 21 años, 6 meses
Puntos: 0
No voy a leer todo el código (es demasiado xD), pero el truco es basicamente poner a contar una variable i=1....n , y luego con Mod(X) = 0 sacar las tablas. Algo así
response.write "<tr>"
do while not mr.eof
response.write "<td><img src=....></td>"
if i mod3 = 0 then response.write "</tr><tr>"
i=i+1
mr.movenext
response.write "</tr>"
__________________
Tu portal de manga y anime.
  #5 (permalink)  
Antiguo 05/06/2005, 14:50
 
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 83
Antigüedad: 20 años, 10 meses
Puntos: 0
paginacion

no me funciona, te paso tu codigo en mi sistema :

<table border="0" class="estilotabla" width="80%" align="center">
<% i = 0 %>
<%
response.write("<tr>")
do while not rs.eof and contador <= cint(tamanopagina) %>

<td class="estilocelda" width="20%"><img src="images/<%=RS("CodigoPropio")%>.jpg" width="200" height="125" ><%= i %></td>
<%
if i mod 3 = 0 then response.write("</tr><tr>")
i = i + 1
%>
</tr>
<%
rs.movenext
response.write("</tr>")
contador=contador+1

loop%>
</table>
  #6 (permalink)  
Antiguo 05/06/2005, 15:07
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años, 2 meses
Puntos: 9
Esto es lo que tendrías que tratar de lograr:

<table border="1">
<tr>
<%
Counter = 0
For i=0 to 8
Counter = Counter + 1
Response.Write("<td>Tabla dinámica</td>")
if Counter = 3 then
Response.Write("</tr><tr>")
Counter = 0
end if
next
%>
</tr>
</table>

Probá este código tal como esta, sin añadirle nada. Te genera una tabla de 3 por 3.
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 12:25.