Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-10-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
Paginado en una Web

Hola Gente yo quisiera saber si alquien me puede decir como hacer un paginado de un listado para una pagina Web. Yo ya hice un paginado y puedo listar los registros q quiero por pagina, pero ponele q tenga muchos registros, me van a aparecer todos numeros con sus link y queda muy feo, por eso yo quisiera hacer algo como el paginado de google q va mostrando por parte, por ejemplo si yo tengo 20 paginas, q me muestre las primeras 5 y un link siguiente por ejemplo en donde me muestre otra pagina mas o otras 5.
Entienden mas o menos
Muchas Gracias, Pancho
Responder Con Cita
  #2  
Antiguo 14-10-2004
Avatar de taita
taita taita is offline
Miembro
 
Registrado: sep 2003
Ubicación: Murcia, San Pedro del Pinatar
Posts: 115
Poder: 21
taita Va por buen camino
Hola Fmonte:
Una pregunta... qué tipo de lenguaje utilizas? ASP? PhP? Jsp?
Es que si no lo indicas es posible que nadie pueda ayudarte.
Saludos.
__________________
No sabiendo que era imposible... él fue... y lo hizo!!!
En fase de construcción: LoBusco.com más .com que nunca!
Responder Con Cita
  #3  
Antiguo 14-10-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
Hola Taita, estoy usando ASP.

Encontre codigos en PHP, pero no me sirve porque tengo todo en ASP.
Muchas Gracias
Pancho
Responder Con Cita
  #4  
Antiguo 14-10-2004
Avatar de taita
taita taita is offline
Miembro
 
Registrado: sep 2003
Ubicación: Murcia, San Pedro del Pinatar
Posts: 115
Poder: 21
taita Va por buen camino
Exclamation

Hola de nuevo:
no sé si será correcto que yo publique un enlace a otra página aqui, pero como considero que es un tema de ASP que es demasiado extenso para ser contestado aqui, te dejo un enlace en donde puedes ver paso a paso cómo se hace la paginación de resultados para ASP.
Este es el enlace
Saludos.

Pd: Pido disculpas si he metido la pata al publicar este enlace.
__________________
No sabiendo que era imposible... él fue... y lo hizo!!!
En fase de construcción: LoBusco.com más .com que nunca!
Responder Con Cita
  #5  
Antiguo 14-10-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
Hola TaiTA, mira ya estuve mirando ese codigo, pero yo busco algo como el paginado de esta pagina "Club Delphi" por ejemplo, q muestra 1 al 5 ponele y si presionas la flechita aparecen mas paginas, algo asi busco, o sea quiero limitar el paginado y con un link siga mostrando mas paginas y asi sucesivamente hasta las ultimas paginas.Pancho, muchas gracias
Responder Con Cita
  #6  
Antiguo 14-10-2004
Avatar de taita
taita taita is offline
Miembro
 
Registrado: sep 2003
Ubicación: Murcia, San Pedro del Pinatar
Posts: 115
Poder: 21
taita Va por buen camino
Exclamation

OK:
En ese caso deberías usar algo asi:

Código:
    <html>
   <head>
      <title>Repaginador de resultados</title>
  </head>
  <%
   sSQL="select lo que tu quieras"
   'esta sentencia SQL puede ser creada a partir de un buscador como el que hemos visto en otro reportaje
   'y almacenada en una session para emplearla sucesivas veces en el script: session("ssql")=ssql
   
   'actualizamos numero de pagina
   If Request.QueryString("pag")<>"" Then
      Session("pagina")=Request.QueryString("pag")
   Else
      Session("pagina")=1
   End If
   
   'constantes ADO VBScript
   Const adCmdText = &H0001
   Const adOpenStatic = 3
   
   Set Conn = Server.CreateObject("ADODB.Connection")
   Set Command = Server.CreateObject("ADODB.Command")
   Set RS =Server.CreateObject("ADODB.RecordSet")
   Conn.Open "nombre de tu base de datos"
   RS.Open sSQL,Conn,adopenstatic,adcmdtext
   
   'resultados por pagina a elegir arbitrariamente
   num_registros = 5 
   
   'Dimensionamos las paginas y determinamos la pagina actual
   RS.PageSize=num_registros
   RS.AbsolutePage=Session("pagina")
   %>
   
  <body>
  <div align="center">
   Número de página actual: <b><%=Session("pagina")%></b>
   <br>
   Número de páginas total: <b><%=RS.PageCount%></b>
   <br>
   Número de registros por página: <b><%=RS.PageSize%></b>
   <br>
   Número de registros seleccionados: <b><%=RS.RecordCount%></b>
   </div>
   <br><br>
   
   <table cellspacing="2" cellpadding="2" border="1" align="center">
   <%
   'Contamos el numero de campos
   num_campos=RS.Fields.Count 
   For campo=0 to num_campos-1%>
      <td align="center"><%=RS(campo).Name%></td>
   <%
   Next
   registros_mostrados = 0
   While (Not RS.eof And registros_mostrados < num_registros)
      registros_mostrados = registros_mostrados +1
   %> 
      <tr>
      <%For campo=0 to num_campos-1 %>
   	  <td align="center"><%=RS(campo)%></td>
      <%Next%>
   </tr>
   <%
      RS.MoveNext
   Wend
   %>
   <tr>
   <td colspan="<%=num_campos%>" align="center">
   <%
      i=0
   While i<RS.PageCount 
      i=i+1
   %>
      <b><a href="paginar.asp?pag=<%=i%>"><%=i%></a></b>
   <%
   Wend
   %>
   </td>
   </tr>
   </table>
   <%
   RS.Close
   Conn.Close
   %>
   </body>
   </html>
Esto te mostraría una paginación con números. Ahora solo te tocaría decirle que te muestre 2 números antes (siempre que la página actual sea >=3) y 2 números detrás (siempre que la página actual no sea <= ultima-2).
algo asi ... supongo.
Yo en mi página estoy por crear un código completo para realizar la paginación. Será algo parecido al que te acabo de mostrar (que, todo hay que decirlo, no es mio).
Intenta modificar éste y si ves que no eres capaz avísame, así te echo una mano.
Saludos!.

PD: Deseo dejar claro que el autor de este código es Rubén Alvarez
__________________
No sabiendo que era imposible... él fue... y lo hizo!!!
En fase de construcción: LoBusco.com más .com que nunca!

Última edición por taita fecha: 14-10-2004 a las 21:11:55.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 17:01:40.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi