- Home
- Categorie
- Coding e Sistemistica
- Help Center: consigli per il tuo progetto
- Galleria automatica
-
Galleria automatica
Ciao,
sto creando un sito con jquerymobile (sono alle prime armi) e avrei bisogno di una gallery automatica, nel senso che non vorrei aggiungere manualmente immagine /thumb come qui sotto:<ul id="Gallery"> <li><a href="images/full/01.jpg"><img src="images/thumb/01.jpg" alt="Image 01" /></a></li> <li><a href="images/full/02.jpg"><img src="images/thumb/02.jpg" alt="Image 02" /></a></li> <li><a href="images/full/03.jpg"><img src="images/thumb/03.jpg" alt="Image 03" /></a></li> <li><a href="images/full/04.jpg"><img src="images/thumb/04.jpg" alt="Image 04" /></a></li> <li><a href="images/full/05.jpg"><img src="images/thumb/05.jpg" alt="Image 05" /></a></li> <li><a href="images/full/06.jpg"><img src="images/thumb/06.jpg" alt="Image 06" /></a></li> </ul>
ma richiamare una directory con immagini, che verrà constantemente aggiornata, ad in automatico mi si aggiorna la galleria.
Grazie.
-
Allora dopo tanto girare la soluzione l'avevo sotto gli occhi nella cartella ajax di ho trovato questi:
thumb.php
<?php $album = $_GET['album']; $imagesArr = array(); $i = 0; /* read the descriptions xml file */ if(file_exists('../thumbs/'.$album.'/desc.xml')){ $xml = simplexml_load_file('../thumb/'.$album.'/desc.xml'); } if(file_exists('../thumb/'.$album)){ $files = array_slice(scandir('../thumb/'.$album), 2); if(count($files)){ foreach($files as $file){ if($file != '.' && $file != '..' && $file!='desc.xml'){ if($xml){ $desc = $xml->xpath('image[name="'.$file.'"]/text'); $description = $desc[0]; if($description=='') $description = ''; } $imagesArr[] = array('src' => 'thumb/'.$album.'/'.$file, 'alt' => 'images/'.$album.'/'.$file, 'desc' => $description); } } } } $json = $imagesArr; $encoded = json_encode($json); echo $encoded; unset($encoded); ?>
album.php
<?php if(file_exists('../thumb')){ $files = array_slice(scandir('../thumb'), 2); if(count($files)){ natcasesort($files); foreach($files as $file){ if($file != '.' && $file != '..'){ echo '<li id="'.$file.'" class="arrow"><a href="#thumbs_container">'.$file.'</a></li>'; } } } } ?>
ora il mio problema è quello di usarli, ovvero: come faccio a richiamarli dalla pagina html, dove vanno inseriti?
Grazie aticipatamente.
-
Allora sono arrivato alla soluzione definitiva, ho commentato le linee di codice "manuali" ed inserito lo script album.php come potete medere qui sotto
<!DOCTYPE html> <html> <head> <title>Gallery</title> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="stylesheet" href="hxxp://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.css" /> <link rel="stylesheet" href="css/style.css" /> <script type="text/javascript" src="hxxp://code.jquery.com/jquery-1.6.4.min.js"></script> <script type="text/javascript" src="hxxp://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script> <script type="text/javascript" src="js/script.js"></script> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head> <body> <div data-role="page" class="page gallery-page"> <div data-role="header"> <!--<a href="gallery.html" data-icon="arrow-l" data-rel="back" data-direction="reverse">Back</a>--> <a href="index.html" data-icon="home" data-direction="reverse">Home</a> <h1>PANORAMA</h1> </div><!--/header--> <div data-role="content" class="full-width"> <ul class="gallery three-column-gallery" id="gallery"> <!-- <li><a href="img/gallery/full/holiday/01.jpg" rel="external"><img src="img/gallery/thumb/holiday/01.jpg" /></a></li> <li><a href="img/gallery/full/holiday/02.jpg" rel="external"><img src="img/gallery/thumb/holiday/02.jpg" /></a></li> <li><a href="img/gallery/full/holiday/03.jpg" rel="external"><img src="img/gallery/thumb/holiday/03.jpg" /></a></li> <li><a href="img/gallery/full/holiday/04.jpg" rel="external"><img src="img/gallery/thumb/holiday/04.jpg" /></a></li> <li><a href="img/gallery/full/holiday/05.jpg" rel="external"><img src="img/gallery/thumb/holiday/05.jpg" /></a></li> </ul> --> <script> <?php $directory = "/mobile/gallery1.html"; if (is_dir($directory)) { if ($directory_handle = opendir($directory)) { while (($file = readdir($directory_handle)) !== false) { if((!is_dir($file))&($file!=".")&($file!="..")) echo "<li><a href=\"gallery/thumb_".$file."\"><img src=\"gallery/thumb_".$file."\" alt=\"Image 01\" /></a></li>"; } closedir($directory_handle); } } ?> </script> </div><!-- /content --> </div><!-- /page --> </body> </html>
Il problema che mi si pone ora e che quando dalla homepage clicco per far aprire la gallery (file qui sopra) mi rimane la pagina in caricamento e non si apre qla galleria.
Dove sbaglio?
Grazie