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;
}