Random image

Une fonction qui affiche une image au hasard contenu dans un répertoire.

La fonction GetImagesize permet de spécifier les dimensions de l’image que la fonction va afficher. Veillez à bien activer GD Library sur votre serveur.



function random_img($repertoire, $id){
$imgpath = "upload/$repertoire";

// Afficher une vignette du reportage au hasard |
$nodir = 0;
$output = '';
if ($imgpath == ".." || $imgpath == "." || $imgpath == "")
{
$nodir = 1;
$imgpath = ".";
}

$j = strlen($imgpath);

$j--;

if ($imgpath[$j] != '/' && $imgpath != ".")

$imgpath .= '/';

if (is_dir($imgpath))
{
if ($condir = opendir($imgpath))
{
$i = 0;
while (($curfile = readdir($condir)) != false)
{
$extension = "";

$extension = preg_replace("/.+.(.{3,4})/", "$1", $curfile);

if ($extension == "png" || $extension == "gif" || $extension == "bmp" || $extension == "jpeg" || $extension == "jpg")
{
$i++;
$images{$i} = $curfile;
}
}
if ($images{1} == "")
{
$output .= "Affichage momentanément indisponible";
}
else
{
$i = rand(1, $i);

$image = $images{$i};

$output .= '<img src="';

if ($nodir != 1)

$output .= $imgpath;

$taille = GetImageSize("upload/$repertoire/$image");

$output .= $image.'" style="float: left;" width="'.$taille[0].'" height="'.$taille[1].'" border="0"/>';
}
}
else
{
$output .="Affichage du dossier image impossible";
}
}
else
{
$output .="Affichage momentanément indisponible...";
}
return $output;
}