Ir para conteúdo

POWERED BY:

Arquivado

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

aprendizes

[Resolvido] busca paginada

Recommended Posts

olá à todos estou com uma dificuldade, meu sistema faz a busca por noticias, mas quando eu busco por exemplo: são paulo o sistema me traz tudo relacionado a busca, porém exede muito a pagina eu queria colocar uma paginação nesta pagina mais num consigo de jeito nenhum agum poderia ajudar-me? segue o código:

 

<% @Language = VBScript %>
<%session.LCID=1046%>
<%
function preparaPalavra(str)
 preparaPalavra = replace(str,"a","[a,á,à,ã,â,ä]")
 preparaPalavra = replace(preparaPalavra,"e","[e,é,è,ê,ë]")
 preparaPalavra = replace(preparaPalavra,"i","[i,í,ì,î,ï]")
 preparaPalavra = replace(preparaPalavra,"o","[o,ó,ò,õ,ô,ö]")
 preparaPalavra = replace(preparaPalavra,"u","[u,ú,ù,û,ü]")
 preparaPalavra = preparaPalavra
end function

StrAcento = preparaPalavra(Request.QueryString("busca"))
if StrAcento<> "" then
stringConexao = "Provider=Microsoft.JET.OLEDB.4.0; Data Source=" & Server.MapPath("admin/dados/dados.mdb")
Set RsConexao = Server.CreateObject("ADODB.Connection")
RsConexao.Open stringConexao
strSQL = "SELECT * FROM Noticias WHERE Noticia LIKE '%"& StrAcento &"%'" 
Set RS = RsConexao.Execute(strSQL) 
%>
<body bgcolor="white" leftmargin="0" marginwidth="0" topmargin="0" marginheight="0">
<font face="Arial"><span style="font-size:10pt;"> 
<%While not RS.EOF
response.write ("<a href=""noticias.asp?id=" & ""    & RS("ID") & """>" & RS("Detalhe") & "</a>") & "<BR><BR>"
RS.MoveNext
Wend
end if
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mode Xam ON

 

Da uma olhada no lab de scripts aqui da seção asp, procure por paginação que você irá encontrar bastante resultado.

 

Boa sorte.,

Compartilhar este post


Link para o post
Compartilhar em outros sites

ai que esta meu problema não consigo entender. é assim eu peguei esta parte e coloquei no meu código:

 

<% 
    'Criamos as Validações para a navegação "Anterior" e "Próximo"  
    if intpagina>1 then 
    %> 
    <a href="paginacao.asp?pagina=<%=intpagina-1%>">Anterior</a> 
    <% 
    end if
    if StrComp(intpagina,rsBuscaProdutos.PageCount)<>0 then   
    %>
    <a href="paginacao.asp?pagina=<%=intpagina + 1%>">Próximo</a>  
    <%
    end if
    rsBuscaProdutos.close
    Set rsBuscaProdutos = Nothing
    %>
obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

como citado acima, existem vários ótimos exemplos de se implantar paginação. Há várias abordagens para paginação. Paginação normalmente é um problema de arquitetura. Paginação depende amplamente do seu design de banco de dados e quantos registros você têm à página.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Patrique, o problema é que no meu code ja existe uma conexão com bd certo?

StrAcento = preparaPalavra(Request.QueryString("busca"))if StrAcento<> "" thenstringConexao = "Provider=Microsoft.JET.OLEDB.4.0; Data Source=" & Server.MapPath("admin/dados/dados.mdb")Set RsConexao = Server.CreateObject("ADODB.Connection")RsConexao.Open stringConexaostrSQL = "SELECT * FROM Noticias WHERE Noticia LIKE '%"& StrAcento &"%'" Set RS = RsConexao.Execute(strSQL)

e na paginação tambem tem uma outra conexão, por isso que eu não entendo como fazer funcionar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não consegue?

 

Tente e me poste como esta tentando, para a gente ver aonde você esta errando.

 

Se eu fizer aqui ai que tu não aprende mesmo.

 

:)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Peguei um code no laboratorio e tentei adaptar, mas deu o erro:

Script error detected at line 41.

Source line: end if

Description: Instrução esperada

 

Segue o code como ficou:

<title>Resultado da pesquisa</title>
<%
StringDeConexao = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.MapPath("admin/dados/dados.mdb")
Set Conexao = Server.CreateObject("AdoDb.Connection")
Conexao.Open StringDeConexao

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

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

objRS.CacheSize = registros
objRS.PageSize = registros

SQL = "Select * from Noticias"

objRS.Open SQl,Conexao,3,3

If objRS.Eof then
Response.Write("Nenhum registro encontrado.")

else

if Request.QueryString("pagina")="" then
pagina = 1
elseif cint(Request.QueryString("pagina"))<1 then
pagina = 1
elseif cint(Request.QueryString("pagina"))>objRS.PageCount then
pagina = objRS.PageCount
else pagina=Request.QueryString("pagina")
end if
end if

objRS.AbsolutePage = pagina

contador = 0

While not RS.EOF
response.write ("" & RS ("Data") & "</P>" & "<a href=""noticia.asp?id=" & ""    & RS("ID") & """>" & "" & "" & "" & RS("Detalhe") & "</a>") & "<hr>" & ""
RS.MoveNext
Wend
end if
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual o número do erro !?!?!

Compartilhar este post


Link para o post
Compartilhar em outros sites

... você estava mandando um objeto não existente... você estava tentando com RS o certo era nesse caso objRS

 

<title>Resultado da pesquisa</title>
<%
StringDeConexao = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.MapPath("admin/dados/dados.mdb")
Set Conexao = Server.CreateObject("AdoDb.Connection")
Conexao.Open StringDeConexao

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

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

objRS.CacheSize = registros
objRS.PageSize = registros

SQL = "Select * from Noticias"

objRS.Open SQl,Conexao,3,3

If objRS.Eof then
Response.Write("Nenhum registro encontrado.")

else

if Request.QueryString("pagina")="" then
pagina = 1
elseif cint(Request.QueryString("pagina"))<1 then
pagina = 1
elseif cint(Request.QueryString("pagina"))>objRS.PageCount then
pagina = objRS.PageCount
else pagina=Request.QueryString("pagina")
end if
end if

objRS.AbsolutePage = pagina

contador = 0

While not objRS.EOF
response.write ("" & objRS ("Data") & "</P>" & "<a href=""noticia.asp?id=" & ""    & objRS("ID") & """>" & "" & "" & "" & objRS("Detalhe") & "</a>") & "<hr>" & ""
objRS.MoveNext
Wend
end if
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eita code bagunçado....

 

<title>Resultado da pesquisa</title>
<%
StringDeConexao = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.MapPath("admin/dados/dados.mdb")
Set Conexao = Server.CreateObject("AdoDb.Connection")
Conexao.Open StringDeConexao

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

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

objRS.CacheSize = registros
objRS.PageSize = registros

SQL = "Select * from Noticias"

objRS.Open SQl,Conexao,3,3

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

objRS.AbsolutePage = pagina

contador = 0

While not objRS.EOF
response.write ("" & objRS ("Data") & "</P>" & "<a href=""noticia.asp?id=" & ""    & objRS("ID") & """>" & "" & "" & "" & objRS("Detalhe") & "</a>") & "<hr>" & ""
objRS.MoveNext
Wend
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

<title>Resultado da pesquisa</title>

<%

StringDeConexao = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.MapPath("admin/dados/dados.mdb")

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

Conexao.Open StringDeConexao

 

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

 

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

registros = 4

 

objRS.CacheSize = registros

objRS.PageSize = registros

 

SQL = "Select * from Noticias"

 

objRS.Open SQl,Conexao,3,3

 

If objRS.Eof then

Response.Write("Nenhum registro encontrado.")

else

if Request.QueryString("pagina")="" then

pagina = 1

elseif cint(Request.QueryString("pagina"))<1 then

pagina = 1

elseif cint(Request.QueryString("pagina"))>objRS.PageCount then

pagina = objRS.PageCount

else

pagina=Request.QueryString("pagina")

End If

end if

 

objRS.AbsolutePage = pagina

 

contador = 0

 

While not objRS.EOF

response.write ("" & objRS ("Data") & "</P>" & "<a href=""noticia.asp?id=" & "" & objRS("ID") & """>" & "" & "" & "" & objRS("Detalhe") & "</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&"?pagina="&i&">"&replace(i,pagina,"<font color=blue><b>"&i&"</b>")&"</a> ")

 

Next

%>

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.