Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

aprendizes

Code com falhas

Recommended Posts

Achei este code aqui no forum, e fiz as alterações necessarias. ele até faz busca certo, porém na hora que clico para ir para a próxima pagina (paginação) ele repeta as mesmas noticias e não tem o controle de X noticias por pagina. Como posso resolver isso?

 

<%
session.LCID=1046

function preparaPalavra(str)
   preparaPalavra = replace(str,"a","[a,á,à,ã,â,ä]")
   preparaPalavra = replace(str,"c","[c,ç]")
   preparaPalavra = replace(preparaPalavra,"e","[e,é,è,ê,ë]")
   preparaPalavra = replace(preparaPalavra,"i","[i,í,ì,î,ï]")
   preparaPalavra = replace(preparaPalavra,"o","[o,ó,ò,õ,ô,ö]")
   preparaPalavra = replace(preparaPalavra,"u","[u,ú,ù,û,ü]")
   preparaPalavra = preparaPalavra
   preparaPalavra = preparaPalavra
end function

StrAcento = preparaPalavra(Request.QueryString("busca"))

if StrAcento = "" then
   Response.Redirect("nadaprocurado.asp")
End If

StringDeConexao = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.MapPath("dB.mdb")
Set Conexao = Server.CreateObject("AdoDb.Connection")
Conexao.Open StringDeConexao

Set objRS = Server.CreateObject("AdoDb.RecordSet")

nomepagina = "buscar.asp" 'IMPOTANTE:Coloque aqui o nome desta página.

SQL = "SELECT * FROM Noticias WHERE Noticia LIKE '%"& StrAcento &"%'"

objRS.Open SQl,Conexao,3,3

If objRS.Eof then
  Response.Write "Nenhum registro encontrado"
else
   if Request.QueryString("p")="" then
       p = 1
   elseif cint(Request.QueryString("p"))<1 then
       p = 1
   elseif cint(Request.QueryString("p"))>objRS.PageCount then
       p = objRS.PageCount
   else 
       p=Request.QueryString("p")

objRS.AbsolutePage = p

contador = 0
   End If
end if


While not objRS.EOF
   response.write ("" & objRS ("Data") & "</P>" & "<a href=""ver.asp?id=" & ""    & objRS("id") & """>" & "" & "" & "" & objRS("Not") & "</a>") & "<hr>" & ""
objRS.MoveNext

contador = contador + 1

If objRS.eof then
   Response.Write("")
end if

Wend

for i=1 to objRS.PageCount
   response.Write("<a href="&nomepagina&"?busca="&Request.QueryString("busca")&"&p="&i&">"&replace(i,p,"<font color=blue><b>"&i&"</b>")&"</a>  ")
Next
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifique outros exemplos, tem um do TEDK no laboratório de scripts para mysql que funciona muito bem, pode ser facilmente adaptado para o seu caso.

Geralmente, quando ele perde a paginação como descreve, é porque falta a passagem de algum parametro por querystring para posicionar o cursor do banco de dados na página correta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.