problème de doublons avec images aléatoires

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : problème de doublons avec images aléatoires

Re: problème de doublons avec images aléatoires

par stopher » 26 nov. 2009, 15:14

Salut ,

moi j'enlèverai la valeur choisi du tableau .


Donc :
$fi = array_rand($file);
unset($file[$fi[0]]);
Ainsi à la prochaine selection , cette image ne pourra plus être selectionnée .


Edit : Arf .. mal lue .. ce n'est pas une boucle ... mon exemple ne fonctionne donc pas pour ton cas ...

Ch.

problème de doublons avec images aléatoires

par Totoffe » 26 nov. 2009, 14:55

Bonjour,

Voici mon petit soucis, j'ai créé un code me permettant d'afficher des images aléatoires (51 exactement), le problème, c'est que j'ai des doublons, ce que je voudrai absolument éviter.

Voici mon code :
<?php
	session_start();
	if (isset($_GET['reset']))
	{
		$cpt = 1;
		echo '<script type="text/javascript">window.setTimeout("location=(\'index.php\');",0);</script>';
	}
	elseif (isset($_SESSION['cpt']))
		$cpt = $_SESSION['cpt'] + 1;
	else
		$cpt = 1;
		$_SESSION['cpt'] = $cpt;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="en">
	<head>
		<?php
			$num = 50;
			if ($cpt <= $num)
			echo '<script type="text/javascript">window.setTimeout("window.location.reload();",200);</script>';
		?>
	</head>
	<body>
		<?php		
			// CHOIX DE L'IMAGE ALÉATOIRE
				$root = "data/";
				$file = glob("$root/*.jpg", GLOB_BRACE);
				$fi = array_rand($file);
				echo utf8_encode("<a href=''><img src=\"$file[$fi]\" /></a>");
Comment faire pour que chaque image soit unique ?
J'ai pensé à écrire chaque nom dans un fichier txt lors de son affichage, puis à comparer l'image aléatoire avec la liste, mais c'est super lourd comme méthode, n'y a t il pas plus simple ? (Idem, si l'on peut remplacer le JS par du PHP pour les 51 affichages).

Merci