Ciao a tutti!
Io ho necessità di pescare un'img JPG random da una cartella per poi visualizzarla.
Sto usando questa funzione
Codice PHP:
function imgRnd($path) {
//definiamo le estensioni consentite
$estensioni = array('JPG','jpg');
//apriamo la cartella
if(!$cartella = @opendir($path)) {
die("Impossibile aprire la directory.");
}else{
while(($immagine = readdir($cartella)) !== false){
if($immagine == "." || $immagine == "..") {
continue;
}
// verifichiamo le estensioni
list($nome_file, $estensione) = explode(".", $immagine);
if(!in_array(strtolower($estensione),$estensioni)) {
continue;
}else{
// memorizziamo il contenuto della cartella in un array
$immagini[] = $immagine;
}
}
// mostriamo l'immagine casuale
$val = array_rand($immagini);
return $path . "/" . $immagini[$val];
}
}
Per usarla eseguo un echo sul return della funzione!
Il problema è che mi genera un errore (anche se poi la funziona funge perchè l'url dell'immagine lo vedo!!!)
l'errore è questo:
"Notice: Undefined offset: 1 in C:\xampp\htdocs\mioSito\include\functions.php on line 144
gallery/foto/Album Di Prova/thumbs//DSC_0014.JPG"
E viene dato sulla riga:
Codice PHP:
list($nome_file, $estensione) = explode(".", $immagine);
(come vedete dopo l'errore l'url dell'immagine c'è e è corretta...non so cosa ci sia che non va :/)