Ir para conteúdo
Fórum Script Brasil
  • 0

Randomize


ju_rezende

Pergunta

Olá pessoal estou fazendo um sisteminha de provas do qual o mesmo precisa mostra as perguntas aleatoriamente, usei o rnd, ele fez isso, mas sempre pega a mesma sequencia.

Para resolver este problema sei que prciso usar o randomize, mas só não sei como.

meu codigo

consulta= "SELECT * FROM questoes order by rnd(codigo)"

Se alguém puder me ajudar ficarei muito grata.

Abrços a todos

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

espero estar ajudando, forte abraço.

<%

Randomize()

NumeroRAN = (CInt(1000 * Rnd) + 1) * -1

set conexao = CreateObject("ADODB.Connection")

SQL = "SELECT TOP 1 COLOQUE AQUI O CAMPO DA TABELA, codigo = Rnd(" & NumeroRAN & ") FROM questoes ORDER BY codigo"

' ou se preferir

'SQL = "SELECT TOP 1 COLOQUE AQUI O CAMPO DA TABELA," & _

'"codigo = Rnd(" & NumeroRAN & ")" & _

'"FROM questoes " & _

'"ORDER BY codigo"

set ranDO = conexao.execute(SQL)

response.write ranDO(0)

ranDO.close: set ranDO = nothing

conexao.close: set conexao = nothing

%>

Link para o comentário
Compartilhar em outros sites

  • 0

Na maioria das vezes o top 1 neste caso é utilizado como um limitador, com isto ele efita listas longas, fiz assim imaginando que você estava utilizando uma pagina unica e não sistema de busca com paginação, pesso desculpas caso seja paginação, caso for a adaptação será facil apartir dai.

abraços.

Link para o comentário
Compartilhar em outros sites

  • 0

oi fiquei feliz em poder ajudar.

oi neste caso que você fala que não ta dando certo é portque está gerando um numero finito, em outras palavras, não consta no banco de dados o que o Randomize (NumeroRAN = (CInt(1000 * Rnd) + 1) * -1 ) , com isto da erros de dados não encontrado por se tratar de um numero invalido.

EX:

ID 1 ~ ID 100 ai o Randomize gera um numero 101, ai sua paginação teria problemas em dados EOF. (achque avezes falo muito)

olha tem uma outra forma bem silmples de você fazer, utilizando session ID, este ai é muito usado, mas tem dois problemas na anterior e nesta, é se o numero que foi gerado existe, acho que este é seu problema e será na session tabem, acredito que seria mais logico e facio usar o FOR e TO assim geraria um numero entre determinados, com isto você teria certeza que os numeros gerados estão em seu DB já que são perguntas prontas e não geradas, acredito que com FOR e TO você manipularia melhor o resultado, mas para isto você teria que montar uma especie de caracol em session, bem assim....2 4 6 8 0 e 1 3 5 7 9, com isto você teria 4 pares e 4 impar, desta forma você teria uma logica de 6 numeros variaveis, basta recortar casa de dois, exemplo:

13 57 92 46 80.....neste aqui foi assim 1 3 5 7 9....2 4 6 8 0, assim você montaria uma logica de 10 a cada paginação e teria uma pergunta diferente a cada pagina, mas teria o segundo problema, que ajo o mais grave, é a repetição logica, caso o usuário fique indo e voltando varias vezes, se ele fosse e voltasse 10 vezes, a logica retornaria ao ponto 0 por determinação.

espero ter ajudado.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...