Ir para conteúdo

POWERED BY:

Arquivado

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

GeniusDesign

[Resolvido] Elementos randomicos dentro de uma array

Recommended Posts

Fala pessoal,

 

deem uma olhada em www.centermusictaquara.com.br à direita. nessa div entra esse sisteminha q eu to me virando pra fazer (meu primeiro!). o sistema de teste ta aki: www.centermusictaquara.com.br/ofertas.php. nesse caso, tenho 6 listas, mas a ideia eh terem varias. serao exibidas 3 aleatorias sempre. mas kero colocar uma condicao q nao repita uma string ja exibida...

 

<?php
$elemento=Array(
0 =>"<li><a href=\"instrumentos/bateria_turbo_junior4322.jpg\" class=\"thickbox\"><img src=\"images/produto_bateria_junior4322.gif\" /></a>
<p>Bateria Junior 4322</p>
<p>Turbo</p>
</li>",
1 =>"<li><a href=\"instrumentos/baixo_eagle_SJB006.jpg\" class=\"thickbox\"><img src=\"images/produto_baixo_eagle_sjb006.gif\" /></a>
<p>Baixo SJB 006 </p>
<p>Eagle</p>
</li>",
2 =>"<li><a href=\"instrumentos/trompete_eagel_tr504.jpg\" class=\"thickbox\"><img src=\"images/produto_trompete_eagle_tr504.gif\" /></a>
<p>Trompete</p>
<p>Eagle</p>
</li>",
3 =>"<li><a href=\"instrumentos/produto_amplificador_meteoro_spaceguitar.jpg\" class=\"thickbox\"><img src=\"images/produto_amplificador_meteoro_spaceguitar.gif\" /></a>
<p>Trompete</p>
<p>Eagle</p>
</li>",
4 =>"<li><a href=\"instrumentos/produto_violao_eagle_90aeb.jpg\" class=\"thickbox\"><img src=\"images/produto_violao_eagle_90aeb.gif\" /></a>
<p>Trompete</p>
<p>Eagle</p>
</li>",
5 =>"<li><a href=\"instrumentos/produto_baixo_eagle_sjb006.jpg\" class=\"thickbox\"><img src=\"images/produto_baixo_eagle_sjb006.gif\" /></a>
<p>Trompete</p>
<p>Eagle</p>
</li>",
);
$x=rand(0,5);//como q eu faço uma condicao pra ele eliminar uma q ja tenha sido escolhida?
$y=rand(0,5);
$z=rand(0,5);
echo $elemento[$x];
echo $elemento[$y];
echo $elemento[$z];
?>

espero q tenha explicado direito...

 

vlw!

Compartilhar este post


Link para o post
Compartilhar em outros sites

^^ tb não sabia como fazer, mas olha essa função: shuffle

http://br2.php.net/manual/pt_BR/function.shuffle.php

<?php
$vetor=Array (
0 => 'Elemento 1',
1 => 'Elemento 2',
2 => 'Elemento 3',
3 => 'Elemento 4',
4 => 'Elemento 5',
5 => 'Elemento 6',
);

shuffle($vetor); 
	echo $vetor[0];
	echo $vetor[1];
	echo $vetor[2];
?>
Não importa que estejamos pegando apenas as chaves: 0,1 e 2, o array todo está sendo ordenado de forma diferente pela função.

:lol:

 

_______

edit: Legal você estar fazendo em Tableless, veja... o validador lhe ajuda a conferir a marcação:

http://validator.w3.org/check?verbose=1&am...quara.com.br%2F

TAGs não fechadas e tal... ajuda bastante.

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa assim.

 

extraia os dados do banco de dados e armazene em um array

 

$meuArray = array();
$sql = mysql_query("... ...") or die("... ..");
while(false !== ($dados = mysql_fetch_array($sql))) {
 array_push($meuArray, $dados['campo da tabela']);
}

$array_shuffle($meuArray);
foreach($meuArray as $links) {
print $links . "<br />";
}

espero ter ajudado.. abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa assim.

 

extraia os dados do banco de dados e armazene em um array

 

$meuArray = array();
$sql = mysql_query("... ...") or die("... ..");
while(false !== ($dados = mysql_fetch_array($sql))) {
 array_push($meuArray, $dados['campo da tabela']);
}

$array_shuffle($meuArray);
foreach($meuArray as $links) {
print $links . "<br />";
}

espero ter ajudado.. abraços!

 

Po, eu keria mt tentar fazer com bd, mas como estou mt atarefado fica dificil parar de estudar. mas vlw!! ainda tenho q ver como criar uma tabela e tentar entender esse codigo.

 

brigadao!

Compartilhar este post


Link para o post
Compartilhar em outros sites

^^ tb não sabia como fazer, mas olha essa função: shuffle

http://br2.php.net/manual/pt_BR/function.shuffle.php

<?php
$vetor=Array (
0 => 'Elemento 1',
1 => 'Elemento 2',
2 => 'Elemento 3',
3 => 'Elemento 4',
4 => 'Elemento 5',
5 => 'Elemento 6',
);

shuffle($vetor); 
	echo $vetor[0];
	echo $vetor[1];
	echo $vetor[2];
?>
Não importa que estejamos pegando apenas as chaves: 0,1 e 2, o array todo está sendo ordenado de forma diferente pela função.

:lol:

 

_______

edit: Legal você estar fazendo em Tableless, veja... o validador lhe ajuda a conferir a marcação:

http://validator.w3.org/check?verbose=1&am...quara.com.br%2F

TAGs não fechadas e tal... ajuda bastante.

 

[]s

PO! Perfeito cara!! Isso mesmo! Funcionou perfeitamente. Ele embaralha as chaves dentro da array e dpois pega sempre os de numero 0, 1 e 2. perfeito! Brigadão!

 

Qnto ao tableless, faço sempre meus sites assim. Algo que eu vinha esquecendo de fazer era a validação na W3C. Foi bom ter me mandado o link pq me lembrou disso e vi q preciso fazer uns acertos. brigadão irmao!! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fazer vindo do banco, é mais simples doque parece.

$sql = mysql_query("SELECT * FROM `categoria`");

	while($dados = mysql_fetch_array($sql)){
		$vetor[] = $dados[1]; 
	}
shuffle($vetor);
 
print $vetor[0]."<br />";
print $vetor[1]."<br />";
print $vetor[2];
Veja que fiz um array, chamado $vetor, com apenas os campos que queríamos... ai o shuffle funciona igual... :lol:

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.