Ir para conteúdo

POWERED BY:

Arquivado

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

fab355

Páginação! Funciona só a primeira página...

Recommended Posts

Olá Pessoal,Estou tentando fazer uma páginação, já olhei os tópicos de páginação postados aqui e em outros foruns só que continuo com o mesmo problema....Quando eu clico para ir para a próxima página ele diz que o Recordset1.EOF é vazio, pode isso!!!Há um detalhe, eu estou utilizando três parametros no meu select, quando eu coloco os valores default dos parametros e acesso a página o erro não acontece, ou seja o erro ocorre em função dos valores passados por parâmetros... pelo menos é que tudo indica!Partes do código:<%Dim Recordset1__VsubtipoRecordset1__Vsubtipo = "0"If (request("i_subtipo") <> "") Then Recordset1__Vsubtipo = request("i_subtipo") End If%><%Dim Recordset1__VbairroRecordset1__Vbairro = "0"If (request("i_bairro") <> "") Then Recordset1__Vbairro = request("i_bairro") End If%><%Dim Recordset1__VcidadeRecordset1__Vcidade = "0"If (request("i_cidade") <> "") Then Recordset1__Vcidade = request("i_cidade") End If%><%Set Recordset1 = Server.CreateObject("ADODB.Recordset")Recordset1.PageSize = 20 'quantidade de registros por página.Recordset1.ActiveConnection = MM_banco_STRINGRecordset1.Source = "SELECT * FROM clientes WHERE i_subtipo like '" + Replace(Recordset1__Vsubtipo, "'", "''") + "' AND i_bairro like '" + Replace(Recordset1__Vbairro, "'", "''") + "' AND i_cidade like '" + Replace(Recordset1__Vcidade, "'", "''") + "' ORDER BY nome ASC"Recordset1.CursorType = 0Recordset1.CursorLocation = 3Recordset1.LockType = 3Recordset1.Open()Recordset1_numRows = 0'Aqui inicia o controle da páginaçãoIF Recordset1.EOF then Response.Write "nenhum registro encontrado" Response.End 'paramos o programaELSE '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"))> Recordset1.PageCount then intpagina=Recordset1.PageCount ELSE intpagina=Request.QueryString("pagina") END IF END IF END IFEND IF'Fim das verificações de exceções'Usamos a propriedade AbsolutePage para dizer ao RS que página ele esta Recordset1.AbsolutePage=intpagina' Inicia o contador que vai controlar os registros mostradosintrec=0%>Faço os controles para identificar se estou na primeira ou na última página, mas enfim para navegar entre as páginas estou fazendo assim:<a href="avancada_resultado.asp?i_subtipo=<%=Recordset1__Vsubtipo%>&i_bairro=<%=Recordset1__Vbairro%>&i_cidade=<%=Recordset1__Vcidade%>&pagina=<%=intpagina+1 %>">Próxima</a><a href="avancada_resultado.asp?i_subtipo=<%=Recordset1__Vsubtipo%>&i_bairro=<%=Recordset1__Vbairro%>&i_cidade=<%=Recordset1__Vcidade%>&pagina=<%=intpagina-1 %>">Anterior</a>Só não entendo porque raios que quando coloco o valor defaut funciona e quando passa para ele pegar de um form ele funciona apenas a primeira página!!! No endereço da URL eu percebo que a passagem dos valores nas variáveis estão corretas.Alguém já passou por algo parecido e tem alguma dica pra resolver tal problema?At+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Pessoal, Encontrei a solução, o problema é que as variaveis apesar de mostrar valores na URL elas ficavam vazias toda vez que tentava navegar pra outra página... Para resolver este problema criei as variáveis de sessão e assim funcionou perfeitamente. Achei interessante colocar a solução aqui pelo motivo que possa ter mais alguém com o mesmo problema!At+

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.