Código PHP:
<?php
$root = "gallery/img/"; // direccion donde se encuentran las carpetas padre
$tot = "3";
$path = array( "north_am", // aqui genero el random de las carpetas
"centro_am",
"sud_am",
"caribe");
$n = mt_rand(0, $tot);
$folder = $root.'/'.$path[$n];
$tit= array("Norte América", "Centro América", "Sur América", "Caribe"); // simplemente saco el nombre de la carpeta padre para ponerlo como titulo
$extList = array(); // un array con las extensiones validas de imagenes
$extList['gif'] = 'image/gif';
$extList['jpg'] = 'image/jpeg';
$extList['jpeg'] = 'image/jpeg';
$extList['png'] = 'image/png';
$img = null;
if (substr($folder, -1) != '/') {
$folder = $folder . '/';
}
if (isset($_GET['img'])) {
$imageInfo = pathinfo($_GET['img']);
if (isset($extList[strtolower($imageInfo['extension'])]) && file_exists($folder .
$imageInfo['basename'])) {
$img = $folder . $imageInfo['basename'];
}
} else {
$fileList = array();
$handle = opendir($folder);
// echo $folder;
while (false !== ($file = readdir($handle))) {
$file_info = pathinfo($file);
if (isset($extList[strtolower($file_info['extension'])])) {
$fileList[] = $file;
}
}
closedir($handle);
$ntotal = count($fileList);
if ($ntotal > 0) {
$imageNumber = rand(0, $ntotal - 1);
$img = $folder . $fileList[$imageNumber];
}
}
?>
<figure><img title="" src="img/maske_gallery.png" style="background: #000 url('<?php echo $img ?>') center center no-repeat;"/></figure></p>
<h3><?php echo $tit[$n];
?></h3>