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

Pagina Anterior E Proxima Pagina


mestre fyoda

Pergunta

Vejam no meu site , http://n.domaindlx.com/clanim/mural/mural_recados.asp

Em cada pagina são mostrados 5 em cada pagina , quando você chega na pagina 3 ela tem 3 topicos , como faço para ela não avançar para a pagina 4 ?

Essa é apenas a parte que mostra a pagina , o resto tirei . oresto que tirei é a paginação .


<%
'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("mural_recados.mdb") 
Conn.open 

Set Conn2 = Server.CreateObject("AdoDb.Connection") 
Conn2.provider="Microsoft.Jet.OLEDB.4.0" 
Conn2.connectionstring=Server.Mappath("../bd.mdb") 
Conn2.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")
Set RS2= 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 mural" 
RS.Open SQL,Conn,3,3

SQL2 = "select * from usuarios" 
RS2.Open SQL2,Conn2,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 
%>
<%  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 
%> 
   <font class="text-header"><a href="mural_recados.asp?pagina=<%=intpagina-1%>" class="TD">Anterior</a>&nbsp;&nbsp;&nbsp;
<a href="mural_recados.asp?pagina=<%=intpagina + 1%>" class="TD">&nbsp;&nbsp;&nbsp;&nbsp;
Próxima </a> 
</font>
<% 
END IF
%>

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Dei uma fuçada rapida aki, da uma olhada se funciona:

<%

'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("mural_recados.mdb")

Conn.open

Set Conn2 = Server.CreateObject("AdoDb.Connection")

Conn2.provider="Microsoft.Jet.OLEDB.4.0"

Conn2.connectionstring=Server.Mappath("../bd.mdb")

Conn2.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")

Set RS2= 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 mural"

RS.Open SQL,Conn,3,3

total=Rs.RecordCount

SQL2 = "select * from usuarios"

RS2.Open SQL2,Conn2,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

%>

<%  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

%>

  <font class="text-header"><a href="mural_recados.asp?pagina=<%=intpagina-1%>" class="TD">Anterior</a>&nbsp;&nbsp;&nbsp;

<%end if

if intpagina >= 1 and intpagina < (total/Rs.PageSize) then %>

<a href="mural_recados.asp?pagina=<%=intpagina + 1%>" class="TD">&nbsp;&nbsp;&nbsp;&nbsp;

Próxima </a>

</font>

<%

END IF

%>

Link para o comentário
Compartilhar em outros sites

  • 0

Entaum tenta assim:

<%

'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("mural_recados.mdb")

Conn.open

Set Conn2 = Server.CreateObject("AdoDb.Connection")

Conn2.provider="Microsoft.Jet.OLEDB.4.0"

Conn2.connectionstring=Server.Mappath("../bd.mdb")

Conn2.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")

Set RS2= 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 mural"

RS.Open SQL,Conn,3,3

SQL2 = "select * from usuarios"

RS2.Open SQL2,Conn2,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

%>

<%  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

%>

  <font class="text-header"><a href="mural_recados.asp?pagina=<%=intpagina-1%>" class="TD">Anterior</a>&nbsp;&nbsp;&nbsp;

<%end if

if intpagina < Rs.PageCount then %>

<a href="mural_recados.asp?pagina=<%=intpagina + 1%>" class="TD">&nbsp;&nbsp;&nbsp;&nbsp;

Próxima </a>

</font>

<%

END IF

%>

Link para o comentário
Compartilhar em outros sites

  • 0

Cara ta muito estranho, pois tenho uma paginação aki funcionando na boa do jeito que eu te passei, só por desencargo de consciencia coloque um Cint na frente do intpagina, ex: if CInt(intpagina) < Rs.PageCount then.

e de um response.write Rs.PageCount, para ver se a contagem de total de paginas esta correta.

** Editado **

Simulei no meu código sem o Cint e parou de funcionar entaum deve ser esse mesmo o problema, ex:

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

if CInt(intpagina) > 1 then

%>

  <font class="text-header"><a href="mural_recados.asp?pagina=<%=intpagina-1%>" class="TD">Anterior</a>&nbsp;&nbsp;&nbsp;

<%end if

if CInt(intpagina) < Rs.PageCount then %>

<a href="mural_recados.asp?pagina=<%=intpagina + 1%>" class="TD">&nbsp;&nbsp;&nbsp;&nbsp;

Próxima </a>

</font>

<%

END IF

%>

Editado por cyberalexxx
Link para o comentário
Compartilhar em outros sites

  • 0

O CInt() devolve o valor inteiro de uma String, exemplo:

a = "100"
b = "100"
response.write a+b 'o resultado será: 100100
response.write CInt(a)+CInt(b) ' o resultado será 200 ou seja as strings foram convertidas em numeros.

To Fechando o tópico, qqer duvida adicional manda PM pra alguém da moderação que o tópico é reaberto.

[]'s

Cyberalexxx

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

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