Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    Photogallery automatica

    Ciao a tutti !

    In una pagina html/php devo mettere diverse photogallery, tutte separate.

    Man mano dovrò aggiungerne altre, ma il problema è che dato che mediamente hanno 50-100 foto, non posso mettermi a scrivere ogni singola riga di codice e qui entra in aiuto il Php.

    Attualmente uso il plugin Fancybox, graficamente è ottimo, ma ripeto, dovrei scrivere 1 riga per ogni foto, e certamente scrivere 500 righe di codice non è un buon passatempo ...

    Conoscete un modo per evitare tutto ciò ?
    Le foto sono organizzate nel seguente modo:

    Anno -> Cartella Evento -> Cartella foto intere e cartella thumbs

    nella cartella thumbs ci sono le immagini dell'anteprima di 80x80px, mentre
    nella cartella di foto intere ci sono appunto le foto originali ...


    Non so se mi avete capito ... Ma potete aiutarmi ?

    Grazie a tutti !!

  2. #2
    Certo che possiamo aiutarti.

    Puoi usare i comandi di lettura del contenuto della directory con php ed estrapolare in questo modo una lista di file, controlli poi che i file siano immagini (tramite degli if), dopodichè stampi a video tutto quello che c'è nell'array generato tranne . e .. che rappresentano (nel web), la cartella in cui sei e la cartella sopra quella in cui ci troviamo.

  3. #3
    Grazie 1000 per la risposta !!

    Il problema è che sono ignorante in materia di Php !!

    Sai se c'è qualche guida ? Oppure se puoi gentilmente aiutarmi a compilare il codice ?

    Grazie ancora !

  4. #4
    Puoi cercarti degli script di lettura dentro ad una cartella (trovi validi candidati dopo 5/10 minuti di ricerche sul sito php.html.it in sezione script o su un motore di ricerca).

    Inoltre se cerchi bene sul web troverai delle photogallery (in php) che fanno quello che chiedi tu credo.

    Se ho tempo domani ti cerco qualcosa (se nel frattempo non trovi niente).

  5. #5
    ho trovato questo: http://scriptandstyle.com/automatica...tory-of-images


    è perfetto, ma c'è un problema ...

    Come faccio a dividere le photogallery ?

    Perchè questo va a leggere il contenuto in una cartella è crea una solo Ph, mentre a me servono Ph divise !

    Grazie ancora !!

  6. #6
    in quel caso gestisci image_dir come una variabile.

  7. #7
    Mi devi perdonare, ma non so niente di php !!!


  8. #8
    Allora, suppongo che te di programmazione ne sappia relativamente poco... tuttavia mi aspetto che te abbia qualche concenzione di come scrivere i path relativi.

    Data questa premessa... dovrebbe essere possibile cambiare questa parte di codice (del sito linkato da te)

    Codice PHP:
    $image_dir 'images/'
    Dove ovviamente dentro images avrai le tue immaginette...

    Io ora ti mostro un'esempio di come con poche righe eseguire quello che vuoi te...

    Innanzitutto devi avere svariati link alla pagina che contiene il codice php, tutti intesi come pagina.php?id=X

    Dove bada bene, X te lo farei gestire come un numero.

    Ora andiamo a dire nella nostra pagina.php che ci sono una serie di numeri

    Codice PHP:
    if (isset($_GET['id'])) // Se esiste la variabile id
       
    {
          
    $gallery trim($_GET['id']); // La galleria che vuole vedere diventa quella da lui digitata
       
    }
    else 
    // Altrimenti se non esiste
       
    {
          
    $gallery "default";
       }

    // Ora vediamo quale galleria è

    switch ($gallery)
       {
          
    // Ogni valore corrisponde ad una cartella (con dentro le immagini per intenderci)
          
    case 1// Caso 1
               
    $image_dir 'images/cartella1/';
               break;

          case 
    2// Caso 2
               
    $image_dir 'images/cartella2/';
               break;

          default: 
    // Caso di default (esempio se non vi è un numero dentro id oppure se è un numero di cui non esistono casi)
               
    $image_dir 'images/cartella1/'// Ho messo questa come "default"
               
    break;
       } 
    Il resto del codice resta invariato, quindi dovresti modificare $image_dir con questa robetta qui...

    Ora se vuoi creare altre gallery in teoria dovrebbe bastare che copi ed incolli questo blocco qui

    Codice PHP:
    case 2// Caso 2
               
    $image_dir 'images/cartella2/';
               break; 
    Che lo metti sotto il caso precedente, attento a copiare bene tutti i caratteri, cambia il numero dopo la parola "case" e cambia la destinazione dentro i singoli apici prima di Break.

    Se qualcosa non è chiaro o se il sistema non funziona fai un fischio.

  9. #9
    Grazie 1000 per la risposta !!!

    Ti chiedo solennemente scusa per il ritardo, ma ero in vacanza all'estero !!!

    Ho fatto come hai detto tu, ma non so perchè carica solamente la cartella1 e la 2 no !

    Ho fatto in questo modo:


    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    	
    	<title>Auto Generating Photo Gallery</title>
    	
    	<link rel="stylesheet" type="text/css" href="style.css" />
    	<link rel="stylesheet" type="text/css" href="resources/fancy.css" />
    	
    	<script type="text/javascript" src="js/jquery-1.2.3.pack.js"></script>
    	<script type="text/javascript" src="js/jquery.fancybox-1.0.0.js"></script>
    	
    	<script type="text/javascript">
    	
    		$(function(){
    		
    			$(".photo-link").fancybox({ 'zoomSpeedIn': 500, 'zoomSpeedOut': 500, 'overlayShow': true }); 
    		
    		});
    	
    	</script>
    </head>
    
    <body>
    
    	<div id="page-wrap">
    	
    	[img]resources/header.png[/img]
    
    
    	<?php
    		
    		if (isset($_GET['id'])) // Se esiste la variabile id 
       { 
          $gallery = trim($_GET['id']); // La galleria che vuole vedere diventa quella da lui digitata 
       } 
    else // Altrimenti se non esiste 
       { 
          $gallery = "default"; 
       } 
    
    // Ora vediamo quale galleria è 
    
    switch ($gallery) 
       { 
          // Ogni valore corrisponde ad una cartella (con dentro le immagini per intenderci) 
          case 1: // Caso 1 
               $image_dir = 'cartella1/'; 
               break; 
    
          case 2: // Caso 2 
               $image_dir = 'cartella2/'; 
               break; 
    
          default: // Caso di default (esempio se non vi è un numero dentro id oppure se è un numero di cui non esistono casi) 
               $image_dir = 'cartella1/'; // Ho messo questa come "default" 
               break; 
       }
    
    		$per_column = 6;
    		
    		
    		/* step one:  read directory, make array of files */
    		if ($handle = opendir($image_dir)) {
    			while (false !== ($file = readdir($handle))) 
    			{
    				if ($file != '.' && $file != '..') 
    				{
    					if(strstr($file,'-thumb'))
    					{
    						$files[] = $file;
    					}
    				}
    			}
    			closedir($handle);
    		}
    		
    		/* step two: loop through, format gallery */
    		if(count($files))
    		{
    			foreach($files as $file)
    			{
    				$count++;
    				echo '[img]',$image_dir,$file,'[/img]';
    				if($count % $per_column == 0) { echo '<div class="clear"></div>'; }
    			}
    		}
    		else
    		{
    			echo '
    
    There are no images in this gallery.</p>';
    		}
    		
    	?>
    	
    <div id="1">
    
    </div>
    
    <div id="2">
    
    </div>
    
    
    	</div>
    
    </body>
    
    </html>
    Dove sbaglio ?

  10. #10
    hai provato a mettere l'id a manina nella barra indirizzi con 2?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.