Ir para conteúdo
Fórum Script Brasil
  • 0

Sistema De Paginação


marcus Gemeos

Pergunta

3 respostass a esta questão

Posts Recomendados

  • 0

você pode fazer assim: pegue o total de paginas e faça um FOR ate esse numero, e dentro do for você imprime o link com o numero que será da pagina, +- assim:

<%

total_pagina = 5

for i=1 to total_pagina

%>

<a href="pagina.asp?pagina=<%= i %>"><%= i %></a>

<% next %>

Onde está em negrito é onde você tem que adaptar ao seu sistema. não testei aqui, mas deve funcionar.

Link para o comentário
Compartilhar em outros sites

  • 0

Olá pessoal,

Um sistema de código completo de páginação:

Banco de dados: clientes.mdb

Tabela: contatos

Campos: id, nome, telefone, email

<%'Efetuando a conexão com a base de dados criada -----------------------
Set Conn = Server.CreateObject("AdoDb.Connection") 
Conn.provider="Microsoft.Jet.OLEDB.4.0" 
Conn.connectionstring=Server.Mappath("/paginacao/clientes.mdb")
Conn.open 
'--------------------------------------------------------------------------
'Vamos criar o objeto Record Set -> neste caso é necessário declará-lo,
'pois vamos utilizar algumas funções deste objeto 
Set RS = Server.CreateObject("adodb.recordset")

RS.PageSize = 5 'quantidade de registros por página. Você pode alterar sem conforme precise.

'Vamos fazer a busca na tabela contatos
SQL = "select * from contatos" 
RS.Open SQL,Conn,3,3

'Vamos agora verificar exceções do tipo “fim de arquivo” (EOF), se a página atual é menor 
'que zero, se é maior que o número total de páginas, etc.
IF RS.EOF then 
   Response.Write "nenhum registro encontrado"
   Response.End 'paramos o programa
ELSE
   'Definindo em qual pagina o visitante está
   IF Request.QueryString("pagina")="" then 
      intpagina=1 
   ELSE
      IF cint(Request.QueryString("pagina"))<1 then
         intpagina=1 
      ELSE
         IF cint(Request.QueryString("pagina"))> RS.PageCount then 
            intpagina=RS.PageCount 
         ELSE
            intpagina=Request.QueryString("pagina")
         END IF
      END IF
   END IF
END IF
'Fim das verificações de exceções

'Usamos a propriedade AbsolutePage para dizer ao RS que página ele esta 
RS.AbsolutePage=intpagina

' Inicia o contador que vai controlar os registros mostrados
intrec=0

'Enquanto o contador for menor que a quantidade de registros mostrados ou
' não for o final do arquivo 
While intrec < RS.PageSize and not RS.EOF 
'------------------- AQUI VEM TUDO O QUE SERÁ PAGINADO -----------------------
   response.write RS("nome") & " - " & RS("telefone") & " - " & RS("email") & "<BR>"
'---------------------------------------------------------------------------------------------
   RS.MoveNext

   ' Acrescenta +1 ao contador
   intrec=intrec+1 
   'Se for EOF (fim de arquivo), imprimir branco na tela
   IF RS.EOF then 
      response.write " " 
   END IF
Wend 'fim do loop

  'Vamos verificar se não é a página 1, para podermos colocar o link “anterior”. 

IF intpagina > 1 then 'AND intpagina <> 2 Then
%>
<align="center"><font color="#FFFFFF" size="2" face="Verdana"><span style="background-color: #808080">&nbsp;<a href="paginacao.asp?pagina=<%=intpagina - 1%>"><font color="#FFFFFF"><b>Anterior</b></font></a>&nbsp;</span><% 
END IF
%>
<%
For i = 1 to rs.PageCount%>
<align="center"><font color="#FFFFFF" size="2" face="Verdana"><span style="background-color: #808080">&nbsp;<a href="paginacao.asp?pagina=<%=i%>"><font color="#FFFFFF"><b><%=i%></b></font></a>&nbsp;</span>
<% 
Next
%>
<%
'Se não estivermos no último registro contado, então é mostrado o link p/ a próxima página 
IF strcomp(intpagina,rs.PageCount) <> 0 then 
%> 
<align="center"><font color="#FFFFFF" size="2" face="Verdana"><span style="background-color: #808080">&nbsp;<a href="paginacao.asp?pagina=<%=intpagina + 1%>"><font color="#FFFFFF"><b>Próxima</b></font></a>&nbsp;</span>
</font></font></font>
<% 
END IF
%>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...