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

miren esta paginacion

Estas en el tema de miren esta paginacion en el foro de ASP Clásico en Foros del Web. saludos, alguien sabe como hacer la paginacion qeu aparece en este sitio? http://www.decali.net/comunidad/c/ espero me puedan ayudar, desde hace tiempo trato de buscar como hacerla ...
  #1 (permalink)  
Antiguo 15/06/2003, 11:27
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 2 meses
Puntos: 4
Exclamación miren esta paginacion

saludos,

alguien sabe como hacer la paginacion qeu aparece en este sitio?

http://www.decali.net/comunidad/c/

espero me puedan ayudar, desde hace tiempo trato de buscar como hacerla y no lo he logrado..
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #2 (permalink)  
Antiguo 17/06/2003, 01:40
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 5 meses
Puntos: 5
Aquí te explica de una manera muy sencilla como paginar los resultados de una página ASP:

Paginando un recordset

Aparte, si utilizas el buscador de estos foros podrás encontrar multitud de preguntas acerca de la paginacion en ASP.

Un beso
  #3 (permalink)  
Antiguo 17/06/2003, 09:02
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 2 meses
Puntos: 4
GRacias helbira, pero ya he visto ese ejemplo y he buscado por las faqs y no veo la paginacion de esta forma
<< 1 2 3 4 .... 50 >> con los puntos suspensivos no quiero decir que siguen los numeros, la paginacion es tal cual como se ve.. del 1 al 4 y si hay mas de 4 paginas solo pone puntos suspensivos y despues muestra la ultima pagina.. para no colocar todos esos numeros.... sabes como hacerlo o alguien que me de una mano?¿
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #4 (permalink)  
Antiguo 17/06/2003, 09:05
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 21 años, 4 meses
Puntos: 0
Pues digo yo que eso se puede hacer con un For...

Si tenemos
txtPaginasTotales
For i = 1 To i = 4
response.write i
Next
response.write "..."
response.write txtPaginasTotales
__________________
Tu portal de manga y anime.
  #5 (permalink)  
Antiguo 17/06/2003, 09:08
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 2 meses
Puntos: 4
gracias por la respuesta, como hago para sacar las paginas totales?
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #6 (permalink)  
Antiguo 17/06/2003, 09:11
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 21 años, 4 meses
Puntos: 0
txtPaginasTotales = MyRecordset.PageCount

Para ello tienes que abirr la DB ASI:
' ****** VARIABLES PARA PAGINAR ******
Dim PaginaActual ' en qué pagina estamos
Dim PaginasTotales ' cuántas páginas tenemos
Dim TamPagina ' cuantos registros por pagina
Dim CuantosRegistros ' para imprimir solo el nº de registro por pagina que queramos
Const adCmdText = &H0001
Const adOpenStatic = 3

TamPagina = 15 ' ** AQUI EL TAMAÑO QUE QUIERA

strSQLR = "SELECT * FROM TABLA ORDER BY ID ASC"
' Defino el tamaño de las páginas
MyRecordset.PageSize = TamPagina
MyRecordset.CacheSize = TamPagina

MyRecordset.Open strSQLR, myMensConn, adopenstatic, adcmdtext

PaginasTotales = MyRecordset.PageCount

[...]
__________________
Tu portal de manga y anime.

Última edición por meru-kun; 17/06/2003 a las 09:14
  #7 (permalink)  
Antiguo 17/06/2003, 09:13
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 5 meses
Puntos: 5
Sólo tienes que poner un simple condicional. Tendrías que comprobar que el número de páginas es mayor que 4, en ese caso, en el apartado donde imprimes los números escribes del 1 al 4, luego los puntos suspensivos y después el total de páginas.

Según el ejemplo del enlace que te he puesto sería en la siguiente parte del código:

Código PHP:
Muestro los enlaces
Response
.Write("<hr>")
numPag PaginaActual
while numPag AND numPag PaginasTotales AND numPag <= 
  Response
.Write("<A HREF=rspagina.asp?pagina="numPag-">" numPag-"</A>   ")
  
numPag numPag 1
wend

if numPag 4 then
  Response
.Write("<A HREF=rspagina.asp?pagina=" numPag+">...</A>")
  
Response.Write("<A HREF=rspagina.asp?pagina=" PaginasTotales ">" &  PaginasTotales "</A>")
end if 
Quizás me falte alguna comilla.. lo hice un poco de cabeza sin probarlo.

Suerte

Última edición por Helbira; 17/06/2003 a las 09:40
  #8 (permalink)  
Antiguo 17/06/2003, 10:26
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 5 meses
Puntos: 5
Aunque estoy pensando que si pulsa sobre los puntos sucesivos no te mostrará los número intermedios... seguirán apareciendo puntos sucesivos..

Olvida mi código... Está fatal..!!

Este sí

Código PHP:
Muestro los enlaces
numPag 
PaginaActual 4
If PaginaActual >= AND PaginaActual 4 Then
  
For i=1 TO 4
%>
    <
a href="rspagina.asp?pagina=1"><%=i%></a>
<%
  
Next
%>
  <
a href="rspagina.asp?pagina=5">...</a>
  <
a href="rspagina.asp?pagina=<%=PaginasTotales%>"><%=PaginasTotales%></a>
<%
Else
%>
  <
a href="rspagina.asp?pagina=1">1</a>
  <
a href="rspagina.asp?pagina=<%=numPag-1%>">...</a>
<%
  For 
i=numPag TO PaginaActual
%>
    <
a href="rspagina.asp?pagina=<%=i%>"><%=i%></a>
<%
  
Next
  
If PaginaActual<PaginasTotales-4 Then
%>
  <
a href="rspagina.asp?pagina=<%=(PaginaActual+1)%>">...</a>
<%
  
End If
  If 
PaginaActual <> PaginasTotales Then
%>
  <
a href="rspagina.asp?pagina=<%=PaginasTotales%>"><%=PaginasTotales%></a>
<%
  
End If
End If
%> 
Un beso
__________________
BUSCO TELETRABAJO
Experiencia de mas de 4 años como desarrolladora web en PHP, ASP, XML, XSL, JavaScript, MySQL, PostGres, SQLServer, ...

Última edición por Helbira; 17/06/2003 a las 10:26
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 04:35.