Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite estou com um problema de paginação, quando defino as variáveis no request.form funciona perfeitamente, mas quando passo as variáveis via formulário a primeira pagina vem perfeita e contador pagina também, mas quando mudo de pagina ele se perde e traz o banco todo.
Agradeço
<div class="container">
<ul class="pager">
<li>
<% IF intpagina > 1 Then %>
<a href="pagina_XXXX.asp?pagina=<%=intpagina-1%>">Anterior</a></li>
<%END IF%>
<li>
<%IF strcomp(intpagina,rstMain.PageCount) <> 0 then%>
<a href="pagina_XXXX.asp?pagina=<%=intpagina + 1%>">Próxima</a>
<%END IF%>
</li><BR><p class="pager">Página <%= intpagina %> de <%= totalPaginas %></p>
</ul>
</div>
 Posso o mesmo arquivo ou tenho que criar uma copia chamando o Request.QueryString("palavra") ?
Não precisa criar outros arquivos, apenas faça as alterações sugeridas, acrescentando a página de resultados:
strPalavra = Request.Form("nome_campo_form")
strPalavra = Request.QueryString("palavra")
Não há problema em utilizar o mesmo nome da variável para ambos os "Request's", já que no primeiro acesso será via "form" e nos demais, por "querystring" e nunca os dois juntos, então será um ou outro.
E adicione aos links de paginação:
<a href="pagina_XXXX.asp?pagina=<%=intpagina + 1%>&palavra=strPalavra">Próxima</a>
Obs.: Os nomes das variáveis no exemplo foram sugestivos, altere conforme sua preferência.
Att.Agora a primeira pagina não esta carregando os dados corretos, só quando vou para próxima pagina é que roda a query correta.
NU_ANO=request.form("tAno")
NU_MES=request.form("tMes")
NU_ANO=request.querystring("nu_ano1")
NU_MES=request.querystring("nu_mes1")
<div class="container">
<ul class="pager">
<li>
<% IF intpagina > 1 Then %>
<a href=pagina_xxx.asp?pagina=<%=intpagina-1%>">Anterior</a></li>
<%END IF%>
<li>
<%IF strcomp(intpagina,rstMain.PageCount) <> 0 then%>
<a href="pagina_xxxx.asp?pagina=<%=intpagina + 1%>&nu_ano1=<%=request.form("tAno")%>&nu_mes1=<%=request.form("tMes")%>">Próxima</a>
<%END IF%>
</li><BR><p class="pager">Página <%= intpagina %> de <%= totalPaginas %></p>
</ul>
</div>Desculpe amigo, sugeri a mesma variável para ambos os "request's" mas esqueci de mencionar que precisa verificar qual o método de envio, segue exemplo e ajustes no seu code:
<%
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
NU_ANO=request.form("tAno")
NU_MES=request.form("tMes")
Else
NU_ANO=request.querystring("nu_ano1")
NU_MES=request.querystring("nu_mes1")
End If
%>
<div class="container">
<ul class="pager">
<% IF intpagina > 1 Then %>
<li><a href="pagina_xxxx.asp?pagina=<%=intpagina - 1%>&nu_ano1=<% =NU_ANO %>&nu_mes1=<% =NU_MES %>">Anterior</a></li>
<% End If %>
<% IF strcomp(intpagina,rstMain.PageCount) <> 0 Then %>
<li><a href="pagina_xxxx.asp?pagina=<%=intpagina + 1%>&nu_ano1=<% =NU_ANO %>&nu_mes1=<% =NU_MES %>">Próxima</a></li>
<% End If %>
<BR>
<p class="pager">Página <%= intpagina %> de <%= totalPaginas %></p>
</ul>
</div>
Att.>
1 hora atrás, Public2004 disse:
Não precisa criar outros arquivos, apenas faça as alterações sugeridas, acrescentando a página de resultados:
strPalavra = Request.Form("nome_campo_form")
strPalavra = Request.QueryString("palavra")
Não há problema em utilizar o mesmo nome da variável para ambos os "Request's", já que no primeiro acesso será via "form" e nos demais, por "querystring" e nunca os dois juntos, então será um ou outro.
E adicione aos links de paginação:
<a href="pagina_XXXX.asp?pagina=<%=intpagina + 1%>&palavra=strPalavra">Próxima</a>
Obs.: Os nomes das variáveis no exemplo foram sugestivos, altere conforme sua preferência.
Att.
Valeu muito obrigado .
@cesarhtc É uma questão de lógica. No primeiro acesso à página de resultados, você recupera o que foi digitado no campo de busca através do "Request.Form", mas a partir daí, qualquer página dos resultados acessada, deverá continuar a receber este valor (o que não acontece no seu exemplo), então como resolver? No primeiro acesso, guarde o valor do campo de busca em uma variável, ex:
strPalavra = Request.Form("nome_campo_form")
E inclua essa variável nos links de paginação, tipo: