Ir para conteúdo

POWERED BY:

Arquivado

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

Régis Nogueira

Banners rotativos sem banco de dados

Recommended Posts

Fala galera bom dia,

 

Preciso da ajuda de vocês pois desenvolvi um sistema de banner rotativo bem simples que não usa banco de dados. Simplesmente ao passo que a página é submetida a uma atualização (refresh) é mostrada uma imagem de forma aleatória que é indicada.

 

O cod está funcionando corretamente o meu problema, e quem quiser e puder pode testar, é que em certo momento ao ficar dando refresh na página as imagens acabem se repetindo muito.

 

Abaixo o cod e quem puder me ajudar a fazer com que as imagens fiquem mais dinâmicas e não se repitam tanto eu agradeço:

 

<?// BANNERS =============================================================================	$linkBanners = "http://www.nomedosite.com.br/includes/banners/";	$banner1 = $linkBanners."banner1.jpg";	$banner2 = $linkBanners."banner2.jpg";	$banner3 = $linkBanners."banner3.jpg";	$banner4 = $linkBanners."banner4.jpg";	$banner5 = $linkBanners."banner5.jpg";// -------------------------------------------------------------------------------------	$banners= array($banner1,$banner2,$banner3,$banner4,$banner5);// -------------------------------------------------------------------------------------	$Namebanner1 = "Nome banner 1";	$Namebanner2 = "Nome banner 2";	$Namebanner3 = "Nome banner 3";	$Namebanner4 = "Nome banner 4";	$Namebanner5 = "Nome banner 5";	$alt_texts= array ($Namebanner1,$Namebanner2,$Namebanner3,$Namebanner4,$Namebanner5);// =====================================================================================	$border="0";	$target="_blank";	$width="780";	$height="130";$action="";$random_no= count($banners);$random=$random_no-1;mt_srand ((double) microtime () * 1000000);$rnd= mt_rand(0,$random);$banner=$banners[$rnd];$alt_text=$alt_texts[$rnd];$link=$links[$rnd];if ($action=="js") {		echo("document.write('<img src=\"$banner\" border=\"$border\" width=\"$width\" height=\"$height\" alt=\"$alt_text\">');");	}	else 	{		echo"<img src=\"$banner\" border=\"$border\" width=\"$width\" height=\"$height\" alt=\"$alt_text\">";	}?>

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando tenho que fazer imagem rotatória utilizo JavaScript, você não gosta de client side?

O ideal seria você juntar os dois, caso no browser do cliente esteja desabilitado, o script que irá rodar seria o de php, caso esteja habilitado, iria rodar o javascript.

Compartilhar este post


Link para o post
Compartilhar em outros sites
<?php   	$l = "http://www.nomedosite.com.br/includes/banners/";	$banner = array($l."banner1.jpg",$l."banner2.jpg",$l."banner3.jpg",$l."banner4.jpg",$l."banner5.jpg");	$nome = array("banner 1","banner 2","banner 3","banner 4","banner 5");	$n=mt_rand(0,count($banner));	echo $nome[$n].'<BR><img src="'.$banner[$n].'"><BR>';?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

esses metodos nao sao praticos, quando você precisa incluir ou remover uma imagem você precisa ficar editando o script

 

a melhor forma de se fazer é varrer um diretorio e pegar as imagens e mostrar aleatoriamente

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele pode usar banco de dados pra inserir, editar e apagar os banners...mas nem por isso eu preciso criar um código envolvendo tudo, estava tentando mostrar uma forma prática de randomizar...mt_rand é melhor do que rand...agora trabalhar valores que vem do banco é lógica de programação. (que pra mim é melhor que fazer uma varredura na pasta)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nada haver, varrer um diretorio é uma pratica comun e usada para diversos fins, imagina fazer um upload de uma imagem nao precisa usar banco de dados e ela ja esta incluida no sistema do banner

 

e o usuario pediu para ajudarem ele sem usar banco de dados

Compartilhar este post


Link para o post
Compartilhar em outros sites

imagina fazer um upload da imagem, e guardar o alt dela em vetor num arquivo de texto ou xml (já que não pode usar banco de dados)...Depois pra fazer alterações e exclusões nas imagens e nos alts daria um certo trabalho fazer contagens de posição, etc..(não estou dizendo impossível!).Não lembrava que não podia usar o BD, mas pra mim usar BD (quando possível) é mais organizado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom pessoal, acredito que não estamos respondendo a pergunta principal do nosso colega, ficamos sugerindo como ele deve fazer e não nos concentramos em responder o que ele quer:

 

"o meu problema, e quem quiser e puder pode testar, é que em certo momento ao ficar dando refresh na página as imagens acabem se repetindo muito."

 

Obs: agora até eu fiquei curioso em saber o porquê.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o meu problema, e quem quiser e puder pode testar, é que em certo momento ao ficar dando refresh na página as imagens acabem se repetindo muito.

Acho que é possível ir guardando as imagens que já foram mostradas num vetor de sessão, e passar para outra imagem, só podendo repetir depois que todas foram mostradsa...caso ele ache REALMENTE necessário....na minha pobre e humilde opinião o mt_rand não repete tanto...

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.