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

paginação em resultado da busca Erro


wsales

Pergunta

Oi Galera to precisando de uma ajudinha.

 

Seguinte: Eu to incluindo uma paginação em um resultado de um busca ate ai tudo bem consegui fazer ele exibe certinho os resultados a la em baixo ele colocar as páginas 1,2,34,...

 

Porem quando clica em um desses numeros pra pular pra pagina seguinte ele pula, porem mostras todos os resultados do banco e não obdece a paginação.

 

alguém pode dizer onde ta esse erro??

 

abaixo o código.

<%
Busca = Ucase (Request.form("buscando"))
%>
<html>
<head>
<title>Buscando</title>
</head>
<style type="text/css">
a:link, a:visited {
    text-decoration: none
    }
a:hover {
    text-decoration:  none
    }
a:active {
    text-decoration: none
    }
</style>
<body>
<br>

<%
Set banco=server.CreateObject("ADODB.Connection")
banco.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=E:\home\onlineon1\web\busca2\AllBusca.mdb"
Set rs=server.CreateObject ("ADODB.RecordSet")     
sql = "SELECT * FROM allbusca WHERE  palavrachave LIKE '%"&busca&"%'"
rs.open sql, banco,3,3


'############## paginacao Introdução  #################

'------- Coloque aqui a quantidade de registros que você deseja por página --------

Const NumPorPage = 15

'Verifica qual a página solicitada
   Dim PagAtual

   IF Request.QueryString("PagAtual") = "" Then
               PagAtual = 1 'Primeira página
         Else
                PagAtual = Request.QueryString("PagAtual")
   End If

   'Cria conexão com o Banco de Dados, já abrir anteriormente
   'Criado anteriormente Set RS = Server.CreateObject("ADODB.Recordset")
   '>>> FIZ EM CIMA rs.CursorLocation = 3        Acerta a posição do cursor . 3 ou adUseClient
 
   rs.CacheSize = NumPorPage 'Define o tamanho do Cache = para o número de registros

   'Cria a String SQL
   '>>> FIZ EM CIMA Dim SQLpag
   '>>> FIZ EM CIMA SQLpag = "SELECT * FROM jogos"
   '>>> FIZ EM CIMA RS.Open SQLpag, Conn    Abre o RecordSet


    rs.MoveFirst                'Move o RecorSet para o início
    rs.PageSize = NumPorPage    'Coloca a quantidade de páginas

    Dim TotalPages              'Pega o número total de páginas
    TotalPages = rs.PageCount

    rs.AbsolutePage = PagAtual  'Configura a página atual

'############## paginacao Introdução  - FIM #################


Count = 0       'Zera o contador
   
'Inicia a Função DO, utilizando a quantidade de páginas especificadas
'Ou seja ele irá executar a ação até que o valor Count seja menor que "20" como está no nosso exemplo
 
i = 0

DO WHILE NOT rs.EOF And Count < rs.PageSize  'paginacao And Count < rs.PageSize

' ----- linhas coloridas -------
if i mod 2<>0 then
cor = "#F4F4F4"
else
cor = "#e1e1e1"
end if
'-------------------------------


if rs.recordcount > 10 then
    rs.movefirst
    Response.write "<Table cellpading = 0 cellspacing = 0>"
    while not rs.EOF
    if Not Left(Ucase(rs("URL")),7) = "HTTP://" then
        curl="http://"&rs("URL")
    else
        curl = rs("URL")
    end if
    
%>
<br>
<br>


<table width="100%">
        <Tr>
        <td width="95"><A HREF=<%=curl%>><img src="<%=rs("foto")%>" width="90" height="68" border="0"  alt=""></a></td>    <td>
        <font color="silver" size="2" face="arial, verdana, tahoma"><%=rs("data")%>
        <br>
        
                <font color="#4a494b" size="3" face="arial, verdana, tahoma"><strong><%=rs("titulo")%></strong></font>
                <br>
                    <A HREF=<%=curl%>><font color="#4a494b" size="3" face="arial, verdana, tahoma"><%
                    desc = Replace (rs.fields("descricao"),chr(10),"<BR>")
                    Response.write desc
                %></font></a>
                <br>
            
            </td>
        </tr>

<tr>
    <td colspan="2"><hr size="1" color="#c0c0c0" width="100%"></td>
</tr>    <%
   i = i+1
 Count = Count + 1   'paginacao
                rs.movenext
    wend
    Response.write "</table>"
Else
    Response.write busca
End if
  LOOP   
    %>
    

    


    
<%'Coloca o Nº página atual / Nº Total de páginas
'Response.Write("<B><font color=""#006600"" size=""2"" face=""Arial""><strong> Página " & Pag'Atual & " de " & TotalPages & " </strong></font></B> - ")   

'Mostra os botões: Anterior e Próximo, utilizando da opção de IF
var01 = Len(PagAtual) 'Lê o tamanho do numero
var02 = var01 - 1 'subtrai um da variavel , retirando o digito menos sig.
var03 = Left(PagAtual,var02) 'obtem os digitos mais  sig. do numero
var04 = Right(PagAtual,1)    'obtem o digito menos sig. do numero
var05 = var03 & 0 ' Acrecenta ZERO no final
IF var04 <> 0 THEN     ' condição se o digito menos sig. é Zero
inicial = var05 + 1
final = inicial + 9  
ELSE
inicial = var05 - 9  
final = var05
END IF
indice_i = var04 - 1 'ultimo digito  - 1
indice_f = 10 - var04 ' 10 - digito menos sig.
If CInt(final) > CInt(TotalPages) Then final = TotalPages
IF PagAtual > 1 THEN

'Se for a primeira página, Mostra apenas o botão Próximo e Ultima
      Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">")
      Response.Write("<a href='buscando2.asp?PagAtual=" &  1 & "'>")
      Response.Write("<img src='images/primeira.gif'border='0' alt='Primeira página'>")
      Response.Write("</a></font></B>  ")
      Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">")
      Response.Write("<a href='buscando2.asp?PagAtual=" & PagAtual - 1 & "'>")
      Response.Write ("<img src='images/anterior.gif' border='0' alt='Página anterior'>")
      Response.Write("</a></font></B>  ")
     IF PagAtual > 10 THEN
      Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">")
      Response.Write("<a href='buscando2.asp?PagAtual=" & inicial - 1 & "'>")
      Response.Write("...")
      Response.Write("</a></font></B>  ")
      ELSE
      Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">")
      Response.Write("....")
      Response.Write("</font></B>  ")
      END IF
      Else
      Response.Write("<B><font color=""#EEEEEE"" size=""2"" face=""Arial"">")
      Response.Write("<img src='images/primeira.gif' border='0' alt='Primeira página'>")
      Response.Write("</font></B>  ")
      Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">")
      Response.Write("<img src='images/anterior.gif' border='0' alt='Página anterior'>")
      Response.Write("</font></B>  ")
      Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">")
      Response.Write("...")
      Response.Write("</font></B>  ")
      End If

'---------------------- NUMEROS  ---------------------------
For i = inicial To final
     If CInt(i)=CInt(PagAtual) Then
         Response.Write "<font color=""#660066"" size=""2"" face=""Arial"">[ <B>" & i & "</B> <font color=""#660066"">]</font>  "
     END IF
     If CInt(i) < CInt(PagAtual) Then
      Response.Write "<font color=""#660066"" size=""2"" face=""Arial""><a href='buscando2.asp?PagAtual=" & i & "' style='color=#666666'>" & i & "</a></font>  "
     END IF
     If CInt(i) > CInt(PagAtual) Then
         Response.Write "<font color=""#660066"" size=""2"" face=""Arial""><a href='buscando2.asp?PagAtual=" & i & "'>" & i & "</a></font>  "
  END IF
Next
IF CInt(PagAtual) <> CInt(TotalPages) THEN
p1 = Left(PagAtual,var02)
p2 = Left(TotalPages,var02)
p3 = Left(TotalPages,var02) & 0
IF (p1 > PagAtual) or ((PagAtual <= 10) and (TotalPages > 10)) THEN
       Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">")
       Response.Write("<a href='buscando2.asp?PagAtual=" & final + 1 & "'>")
       Response.Write("...")
       Response.Write("</a></font></B>  ")
       ELSE
       Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">")
       Response.Write("...")
       Response.Write("</font></B>  ")
       END IF
       Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">")
       Response.Write("<a href='buscando2.asp?PagAtual=" & PagAtual + 1 & "'>")
       Response.Write("<img src='images/proxima.gif' border='0' alt='Próxima página'>")
       Response.Write("</a></font></B>  ")
       Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">")
       Response.Write("<a href='buscando2.asp?PagAtual=" & TotalPages & "'>")
       Response.Write("<img src='images/ultima.gif' border='0' alt='Ultima página'>")
       Response.Write("</a></font></B>  ")        
       ELSE
       Response.Write("<B><font color=""#666666"" size=""2"" face=""Arial"">")
       Response.Write("...")
       Response.Write("</font></B>  ")
       Response.Write("<B><font color=""#666666"" size=""2"" face=""Arial"">")
       Response.Write("<img src='images/proxima.gif' border='0' alt='Próxima página'>")
       Response.Write("</font></B>  ")
       Response.Write("<B><font color=""#666666"" size=""2"" face=""Arial"">")
       Response.Write("<img src='images/ultima.gif' border='0' alt='Ultima página'>")
       Response.Write("</font></B>  ")
       End If
       Rs.Close  
       Set RS = Nothing
       banco.Close      
      Set Conn = Nothing   %>
</body>

 

 

 

valeu!!

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

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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,3k
×
×
  • Criar Novo...