Images aléatoires

Répondre
elisa
le 12/01/2011 à 18:49
elisa
Bonsoir.

Je viens vers vous car je souhaite afficher les photos qui se trouve dans un dossier sur mon serveur, les photos des membres.

J'utilise un script trouvé sur internet, qui liste les images et les affiches. Mon souci c'est que je n'arrive pas à limiter le nombre de photos à 8 et j'aimerais aussi que l'affichage des photos soit aléatoire.

Voilà le script :
<?php
$dir = '../images/';
$valide_extensions = array('jpg', 'jpeg', 'gif', 'png', 'bmp');

$Ressource = opendir($dir);
while($fichier = readdir($Ressource))
{
$berk = array('.', '..');

$test_Fichier = $dir.$fichier;

if(!in_array($fichier, $berk) && !is_dir($test_Fichier))
{
$ext = pathinfo($fichier, PATHINFO_EXTENSION);

if(in_array($ext, $valide_extensions))
{
echo '

<img src="'.$test_Fichier.'" width="70" height="70" />';
}
}
}
?>


Juste une direction à suivre car je cherche depuis le début d'après-midi et je sature un peu.
J'ai regardé le script sur la galerie photo dans " les comment faire" pour essayer de comprendre mais je n'y arrive pas pour l'instant.

Merci :)
i M@N
le 13/01/2011 à 11:37
i M@N
Hello.

Essaye ça :
<?php
#paramètres
#répertoire à chercher
$dir = './images/';
#extensions d'images
$images = array('jpg', 'jpeg', 'gif', 'png', 'bmp');
#nombre d'images à garder
$randomize = 8;
#go!
$dirs=array();
$files=array();
$rep=opendir($dir);
#on lit le répertoire $dir
while($x=readdir($rep)) {
if($x[0]=='.' || $x=='..');
else if(strpos($x,'hidden')===0);
else if(is_dir($x))$dirs[]=$x; //tableau des sous-dossiers
else {
$ext = pathinfo($x, PATHINFO_EXTENSION); //on regarde l'extension
if(in_array($ext, $images)) { //si image
$files[]=$x; //on garde dans notre tableau des fichiers
}
}
}
closedir($rep);
#print_r($files);
#on utilise la fonction array_rand pour tirer des clés du tableau $files au hasard
$random = array_rand($files, $randomize);
#print_r($images);
#pour chaque clé on affiche le fichier correspondant dans le tableau $files
foreach ($random as $key => $value) {
echo '<img src="'.$dir.$files[$value].'" width="70" height="70" />';
}
?>


@+...
One Love, One Heart, One Unity.
lafouine
le 23/02/2015 à 22:50
lafouine
bonjour
j'ai modifier le script pour n'avoir plus que deux images et je voudrais mettre u!n espace entre les deux mais je trouve pas comment faire.
merci d'avance
lafouine
le 24/02/2015 à 18:42
lafouine
c'est bon j'ai trouvé un autre script qui fonctionne
j'ai simplement fait un tableau et mis le script dans les cellule
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours