Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 50 postagens
Mais de 50 postagens
Tópico Autor
Mensagens: 63

Problemas com array-rand

03-01-2011 15:42

Boa tarde

Li os seguintes tópicos
Mas ainda não obtive o resultado de que preciso.

viewtopic.php?f=15&t=86&p=87&hilit=array+rand#p87
viewtopic.php?f=15&t=1261&p=3362&hilit=array+rand#p3362
http://www.php.net/manual/pt_BR/function.array-rand.php

Vi muitos tópicos sobre o RAND do SQL..esse eu uso e funciona normalmente
mas quando eu seleciono na tabela perguntas usando RAND(p.id_pergunta)
eu gostaria de guardar num array as respostas...(que estão na mesma tabela de perguntas).
Ou seja, estou usando o exemplo de paginação presente neste forum.Então imprimo as perguntas aleatóriamente usando RAND e para cada pergunta,o usuário tem direito de escolher entre 3 respostas... queria usar o array_rand do php para mostrar aleatoriamente as respostas para cada pergunta.

Então...segui os exemplos mas
se eu uso

$input = array("$resposta_certa", "$resposta_dois", "$resposta_tres"); $rand_keys = array_rand($input,count($input)); echo htmlentities($input[$rand_keys[0]]); echo htmlentities($input[$rand_keys[1]]); echo htmlentities($input[$rand_keys[2]]); 

Eu obtenho os resultados na ordem que aparecem no banco...e não aleatóriamente

Se eu uso

$input = array("$resposta_certa", "$resposta_dois", "$resposta_tres"); $valor = rand(0, 2);  echo htmlentities($input[$valor]); 

Neste caso obtenho o mesmo resultado...ou seja...só pega uma resposta.
Ai nas três opções de resposta...repete 3 vezes a mesma resposta.

Vi muitos tópicos sobre o RAND do SQL..esse eu uso e funciona normalmente
mas quando eu seleciono na tabela perguntas usando RAND(p.id_pergunta)
eu gostaria de guardar num array as respostas...(que estão na mesma tabela de perguntas).
Ou seja, estou usando o exemplo de paginação presente neste forum.Então imprimo as perguntas aleatóriamente usando RAND e para cada pergunta,o usuário tem direito de escolher entre 3 respostas... queria usar o array_rand do php para mostrar aleatoriamente as respostas para cada pergunta.
0
 
Mais de 50 postagens
Mais de 50 postagens
Mensagens: 69

Problemas com array-rand

03-01-2011 17:03

Fala Lady, Feliz Ano Novo!

Vou tentar ajudar... Fiz algumas alterações no segundo código que você encontrou aqui mesmo no CodigosnaWeb e ficou assim:

$resposta = array();  $resposta[] = "$resposta_certa"; $resposta[] = "$resposta_dois"; $resposta[] = "$resposta_tres"; $exibe = array_rand($resposta, count($resposta));  // no for é mostrado cada elemento do array  for($i = 0; $i < count($resposta); $i++) {  echo $resposta[$exibe[$i]];  }  

Veja se funciona. Dessa maneira, o for() faz com que seja exibido todos os resultados de maneira aleatória e não apenas um... Espero que funcione e ajude!
0
 
Mais de 50 postagens
Mais de 50 postagens
Tópico Autor
Mensagens: 63

Problemas com array-rand

03-01-2011 17:17

Ola klebers Feliz 2011 :rofl:

Sua idéia deu certo...imprimiu aleatóriamente..mas como uso paginação meio que o for desalinhou tudo hehehe...
Acredito que o problema esteja no for dentro do while,ou no local que fechei a chave..mas funciona sim...=)

consegui corrigir o problema usando o seguinte código

$input = array("$resposta_certa", "$resposta_dois", "$resposta_tres"); shuffle($input); //shuffle mistura os valores de um array echo htmlentities($input[0]); echo htmlentities($input[1]); echo htmlentities($input[2]); 

Muito obrigada pela ajuda =)
0
 
Mais de 50 postagens
Mais de 50 postagens
Mensagens: 69

Problemas com array-rand

03-01-2011 17:22

bom saber... desconhecia o shuffle... Obrigado pela dica!

;)
0

Quem está online

Usuários navegando neste fórum: Bing [Bot]