Alessio Luffarelli - Sito Web
Sei qui: Guide e Tutorial / Web / Realizzare una galleria fotografica in PHP
Realizzare una semplice galleria fotografica in PHP

Avete presente la mia pagina di Foto? Se non l'avete mai vista prima, guardatela un attimo e poi continuate a leggere questo Tutorial. Tale pagina consiste in uno script PHP che preleva da una directory le immagini e le informazioni su di esse, e genera il codice HTML che permette la loro visualizzazione. E' uno script molto semplice che chiunque potrebbe integrare nel proprio sito, ma per coloro a cui piace la "pappa pronta", lo metto a disposizione con qualche commento. In fondo alla pagina troverete anche le "istruzioni per l'uso".

<?php

// Specificare il percorso della directory che contiene le immagini
$img_dir = "./foto";

// Utilizzo opendir per aprire la directory
$handle = opendir($img_dir);

// Esploro il contenuto della directory
while ($files = readdir($handle)) {

  // Preparo le miniature...
  if ($files != "." && $files != ".." && substr($files,strlen($files)-6) == "_s.jpg" ) {
    $foto = $img_dir . '/' . $files;
    $miniatura = $img_dir . '/' . substr($files,0,strlen($files)-6) . '.jpg';
    $commento = "";

    // ... ed eventuali commenti
    if (file_exists($img_dir . '/' . substr($files,0,strlen($files)-6) . '.txt')) {
      $commento = file_get_contents($img_dir . '/' . substr($files,0,strlen($files)-6) . '.txt') ;
    }

    // Stampo il codice HTML per la visualizzazione della galleria
    print '<a href="'.$miniatura.'"><img border="0" src="'.$foto.'" alt="" width="121" height="91" title="'.$commento.'" /></a>'."\n";

  }

} // End while

?>

Note:

  • Prima di utilizzare lo script, assicurarsi di cambiare l'istruzione $img_dir = "./foto" con il nome della propria cartella di immagini.
  • Lo script, così come è scritto, è in grado di accettare solo immagini nel formato JPG.

Per inserire una (nuova) foto nella galleria fotografica procedete come descritto di seguito:

  • Date un nome alla foto che non contenga spazi e con l'estensione minuscola. Ad esempio "mia_foto_3.jpg".
  • Ora dovete preparare la miniatura della foto. Con il programma di ridemensionamento immagini che preferite, ridemensionate l'immagine in dimensioni 121*91 pixel. Salvatela con lo stesso nome dell'immagine grande ma aggiungete il suffisso "_s". Continuando col nostro esempio la chiameremmo quindi "mia_foto_3_s.jpg".
  • Se volete che, soffermandosi col mouse sopra l'immagine, venga visualizzata una breve descrizione, create un file di testo con lo stesso nome dell'immagine. Nel nostro esempio si chiamerebbe "mia_foto_3.txt". Al suo interno scrivete quello che volete venga visualizzato. La frase deve essere breve poichè altrimenti non tutti i browser saranno in grado di visualizzarla correttamente. Non è indispensabile seguire questo punto.
  • Ora prendete i tre file appena creati e caricateli sul vostro sito web, all'interno della cartella specificata nello script.

Se non volete ogni volta utilizzare un client FTP per caricare i vostri file, ma vi piacerebbe farlo dal vostro browser, leggete questo tutorial sull'upload di file da web.

(C) Alessio Luffarelli