spaceman59660 Posted August 25, 2006 Share Posted August 25, 2006 bonsoir, Je suis a la recherche pour que une images soit choisie aleatoirement dans un dossier et affichée sur une page web. Comme l'index de ce site => http://www.318racing.com/ Je voudrait le faire assez simplement si possible (petit script ou autres...) Merci de vos reponses Link to comment Share on other sites More sharing options...
playstation.2.fg Posted August 26, 2006 Share Posted August 26, 2006 C'est du simple random. Pour faire ça facilement et rapidement (en php par exemple) : - Tu créé un répertoire où tu mets toutes tes images (et éventuellement QUE des images, ça simplifiera le script). - dans ton script, tu fais un listing du dossier en question (sous forme de array) - et après, tu utilises mt_rand sous la forme (en disans que le listing est sauvé sous liste) : liste[mt_rand(0, sizeof(liste))]. Voila je pense que c'est tout. Après encore éventuellement jouer sur la taille de l'image, mais c'est tout. P.S. : on dit pas "je veux", mais "j'aimerai" Link to comment Share on other sites More sharing options...
spaceman59660 Posted August 26, 2006 Author Share Posted August 26, 2006 heu... j'ai rien comprit parce que moi et la html ca va encore, mais moi et le php, , voila... donc si ta un petit script a proposer, c'est pas du refus Link to comment Share on other sites More sharing options...
playstation.2.fg Posted August 26, 2006 Share Posted August 26, 2006 Bon je te donne les clés rapidement (c'est un script fait vite fait, sans vérif). - créer un répertoire "images" à la base de ton site. - dans ce répertoire tu mets tes images (j'ai bien QUE des images). Ensuite ça donne a peu près ça : ton code HTML jusqu'au point où tu veux mettre ton image ... <?php $dossier = "images"; $handle = dir($dossier); $images = array(); while ($file = $handle->read()) { if (($file != ".") && ($file != "..")) { $images[] = $dossier . '/' . $file; } } $image_hasard = $images[mt_rand(0, (sizeof($images)-1))]; // On pourrait faire éventuellement une vérification que c'est bien une image (ou même avant dans le while). echo '<img src="' . $image_hasard . '" alt="Image hasard" />'; // Ici aussi éventuellement mettre la taille de l'image. ?> ... La suite de ton code Comme je l'ai dis c'est un code "expérimental", que je n'ai pas testé ni optimisé. Et quelques améliorations ne seraient pas de trop. Ou sinon créer carrément un fichier "image.php" qui te sortira une image de la manière suivante : Dans ton "image.php" : Header("Content-type: image/jpeg"); ....(la suite de ton code).... Et dans ton fichier HTML : <img src="image.php" alt="image au hasard" /> Mais ça complique un peu le code (pas des masses non plus). Après c'est à toi de coder ton truc Link to comment Share on other sites More sharing options...
spaceman59660 Posted August 26, 2006 Author Share Posted August 26, 2006 voila je l'ai installé mais ca lag sur du free http://8spaceman.free.fr/ j'ai tester sur un espace mieu (p*wer-h*b*rg) et ca tourné bien encore... don si tu a une amelioration je suis preneur, sinon jvé faire avec... Merci !! Link to comment Share on other sites More sharing options...
playstation.2.fg Posted August 26, 2006 Share Posted August 26, 2006 D'après moi la lenteur vient de Free (pour l'upload des images, pas du php). Parce que mon script ne fait que lister un dossier (chose "courante" en php) et un random dans un array qui ne contient que du texte (également courant et rapide). Et puis une fois qu'on a toutes les images dans le cache, je trouve que c'est tout de même rapide (voir même instantané). Peut-être éventuellement utiliser la fonction scandir. Sinon une méthode encore plus simple, mais qui demandera du boulot de ton coté : renommer tes fichiers en 1.jpg, 2.jpg, 3.jpg, etc... puis dans ton script : echo '<img src="images/' . mt_rand(1, 5) . '" alt="hasard" />'; pour des images allant de 1.jpg à 5.jpg (par exemple). Il suffit de changer les nombres en fonction du besoin. Par contre c'est moins élégant et moins modulable que ce que je t'ai mis avant car il faut tout configurer au départ et renommer les fichiers. Pour ce qui est de la rapidité elle en sera accrue (même si je doute que tu verras la diff). A toi de voir. P.S. : on dirait que j'ai fais une erreur dans mon premier script (c'est ça quand on vérifie pas par soit même). Je le modifie dans mon précédent post. Link to comment Share on other sites More sharing options...
spaceman59660 Posted August 27, 2006 Author Share Posted August 27, 2006 voila j'ai prit un meilleur hebergement ! http://rallyepub.c.la/ donc ca roule, ps si vous avez des bons themes sur le rallye, je suis preneur Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.