Ir para conteúdo

POWERED BY:

Arquivado

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

Carlos Moreira

RND com paginação, mas aparece resultados iguais nas dema

Recommended Posts

Olá pessoal td bem?É o seguinte, eu estou fazendo resultados aleatorios ou randomicos com o código abaixo, mas há um porem, estou fazendo isso com paginação, e ele mostra os mesmos resultados quando clico em outra página.Eu precisaria que ele guardasse o resultado e depois paginasse.EX: tenho 100 resultados, ele paginaria 10 por página, mas antes de paginar ele teria que guardar aquelas 100 resultados, para que não para não repetir resultadoEntenderam? se não me avisem para eu explicar melhor, o SELECT que estou usando é este"SELECT titulo FROM order by RND(INT(NOW*id)-NOW*id)"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal td bem? acho q assutei vcs com o outro tópico que fiz, ninguem respondeu, rsrsrsr

 

É o seguinte, eu estou puxando resultados aleatorios ou randomicos com o código abaixo, mas há um porem, estou fazendo isso com paginação, e ele mostra os mesmos resultados quando clico em outra página.

Eu precisaria que ele guardasse o resultado e depois paginasse. pra que não mostresse o mesmo resultado nas demais paginas da paginação

 

Me disseram que usar a função (array) seria ideal, mas não sei usar

 

Alguem teria uma solução para isso?

 

o código que estou usando é esse abaixo, e lembrando que é com paginação

 

"SELECT titulo FROM order by RND(INT(NOW*id)-NOW*id)"

 

 

Entenderam? se não me avisem para eu explicar melhor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É complicado funcionar mesmo, o ideal seria você armazenar os ID's dos que já foram exibidos e no SELECT usar um "id NOT IN (valores)".

Compartilhar este post


Link para o post
Compartilhar em outros sites

É realmente complicado, eu aconselho a não fazer dessa forma pois é complicado controlar essas coisas. Talvez usando Session e matriz funcione:

 

Faça a Seleção e pagine a 1ª vez, varra essa "paginação" armazenando os ID's, separados por virgula, numa session e entre os limites das páginas separados por um "|", com isso deverá ter uma matriz com os ID's separados por páginas (posição do array), que irá do 0 à PageCount-1.

 

A partir dai você ussa a session para selecionar apenas os ID's de determinada página (posição do array).

 

Consegui passar o que estou pensando? Entendeu alguma coisa? Se sim você é um gênio pq eu estou tentando até agora! hehehehehe.

 

Se não entendeu avisa que eu tento colocar isso em código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, vou por algo por alto:

If Session("Paginacao") = "" Then
'Seu código que Seleciona e divide as páginas vai aqui!

If Not RSPaginado.EOF Then PaginaAtualdoRS = RSPaginado.AbsolutePage
While Not RSPaginado.EOF Then
If RSPaginado.AbsolutePage <> PaginaAtualdoRS Then
Session("Paginacao") = Left(Session("Paginacao"),Len(Session("Paginacao"))-1) & "|"
Else
PaginaAtualdoRS = RSPaginado.AbsolutePage
End If
Session("Paginacao") = Session("Paginacao") & RSPaginado("CampoID") &","
RSPaginado.MoveNext
Wend
End If

Com isso já teremos a session com os ID's divididos por "paginas".

 

Já já posto como utilizar essa session para exibir os dados!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, vou por algo por alto:

If Session("Paginacao") = "" Then
'Seu código que Seleciona e divide as páginas vai aqui!

If Not RSPaginado.EOF Then PaginaAtualdoRS = RSPaginado.AbsolutePage
While Not RSPaginado.EOF Then
If RSPaginado.AbsolutePage <> PaginaAtualdoRS Then
Session("Paginacao") = Left(Session("Paginacao"),Len(Session("Paginacao"))-1) & "|"
Else
PaginaAtualdoRS = RSPaginado.AbsolutePage
End If
Session("Paginacao") = Session("Paginacao") & RSPaginado("CampoID") &","
RSPaginado.MoveNext
Wend
End If
Com isso já teremos a session com os ID's divididos por "paginas".

 

Já já posto como utilizar essa session para exibir os dados!

kd a resposta eu tbm estou precisando?

Compartilhar este post


Link para o post
Compartilhar em outros sites
kd a resposta eu tbm estou precisando?
Já conseguiu chegar a que ponto?

Compartilhar este post


Link para o post
Compartilhar em outros sites

kd a resposta eu tbm estou precisando?

Já conseguiu chegar a que ponto?

 

por favor continue respondendo no tópico q eu postei q é a mesma dúvida, e la você pode acompanhar mais especificamente

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.