Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    AIUTO per galleria con GD

    Sto scrivendo uno script che genera al volo le miniature per una galleria di immagini... il mio scopo è ottenere questo .
    Il piede, il menu e la ricerca sono già include: mi manca solo il contenuto.
    Per adesso ho scritto questo:
    codice:
    <?php
    //dichiaro le costanti e alcune variabili che mi serviranno
    $titolo="Fotografie di cani e della montagna (due mie passioni).";
    //<h1>Fotografie di cani e della montagna (due mie passioni).</h1>
    $alt="Fotografia di un cane o della montagna";
    $cartella = "immagini/fotografia/";
    $array_immagini = array();
    $percent = 10;
    $qual = 50;
    
    
    //leggiamo i files della cartella, li selezioniamo e li ficchiamo in un array
    // apriamo la directory
    $open_handle = opendir($cartella);
    // impostiamo un ciclo while() per scorrere tutto il contenuto
    while($read = readdir($open_handle)) {
    	// escludiamo i files/directory che non ci interessano
    	if($read != "." && $read != "..") {
    		$array_immagini[] = $cartella . $read;
    		//echo ("Il file " . $read . "è stato inserito nell'array");
    				} else {
    		//echo ("Il file " . $read . " non è una jpeg");
    				}
    }
    // chiudiamo la directory
    closedir($open_handle);
    
    //echo "<h1>".$titolo."</h1>";
    
    
    function thumb($percent,$da,$qual){
    	if(file_exists($da)){
    		$dimVecchie=getimagesize($da);
    		$larghFinale=ceil(($dimVecchie[0]/100)*$percent);
    		$altFinale=ceil(($dimVecchie[1]/100)*$percent);
    		$img_src=imagecreatefromjpeg($da);
    		$img_dst=imagecreatetruecolor($larghFinale,$altFinale);
    		imagecopyresampled($img_dst, $img_src, 0, 0, 0, 0, $larghFinale, $altFinale, $dimVecchie[0], $dimVecchie[1]);
    		header("Content-type: image/jpeg");
    		imagejpeg($img_dst,"",$qual);
    		//<div class="foto">[img]immagini/fotografia/min1.jpg[/img]</div>
    		imagedestroy($img_dst);
    	}
    	else echo ("il file " . $da . " non esiste");
    }
    
    //leggiamo i files nell'array generato precedentemente e li passiamo alla funzione thumb che creerà le miniature e le manderà in output
    foreach ($array_immagini as $imm) {
    	thumb($percent, $imm, $qual);
    }
    ?>
    Scusate errori magari per voi banali (non è molto che scrivo PHP).
    Mi date una mano?
    e grazie

  2. #2

  3. #3
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    Originariamente inviato da andrea.paiola
    AIUTO!!!!!!!






    leggi bene questo thread:
    http://forum.html.it/forum/showthrea...hreadid=731295

    think simple think ringo

  4. #4
    grazie quel thread proprio non l'avevo visto
    anche se io non uso db dovrebbe essermi utile
    riassumendo:
    non usando db <img src=visualizzaimmgini.php?id=1> non posso usarlo
    devo creare uno script che crea l'elenco di tags imm che richiamano uno script che crea le miniature al volo
    giusto?
    Ma come faccio a visualizzare le miniature?
    Devo per forza creare 2 files?
    perdonami se sono un ma non è che mi daresti una mano?
    Abbi pazienza PHP lo devo ancora studiare parecchio...
    Scrivo un po' di codice e ti faccio sapere... intanto se vuoi darmi qualche dritta...
    e grazie

  5. #5
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    speriamo sia la volta buona


    file prova.php
    codice:
    <?php
    $immagini=array("test.jpg","test2.jpg");
    foreach($immagini as $immagine)
    	echo "<img src=\"immagini.php?immagine=$immagine\" alt=\"testo\" />\n";
    ?>

    file immagini.php
    codice:
    <?php
    function LoadJpeg ($imgname) {
    	$src_img=imagecreatefromjpeg($imgname);
    	$larg=150;
    	$alte=113;
    	$im=Imagecreatetruecolor($larg,$alte);
    	$size=getimagesize($imgname);
    	imagecopyresampled($im,$src_img,0,0,0,0,$larg,$alte,$size[0],$size[1]);
    	return $im;
    }
    if (file_exists($_GET['immagine'])){
    	$immagine=LoadJpeg($_GET['immagine']);
    	header("content-type: image/jpeg");
    	imagejpeg($immagine,"",40);
    	imagedestroy($immagine);
    } else {
    	echo "il file non esiste";
    }
    ?>
    think simple think ringo

  6. #6
    OK GRAZIE funzia alla grande l'ho collegato all'array riempito con i file della dir ed ho ottenuto questo:

    http://www.andreapaiola.it/espfotografie.php

    devo apportargli alcune modifiche:
    1)il ridimensionamento deve essere dinamico (in percentuale su altezza e larghezza)
    2) voglio che l'output sia questo e mi sembra che ci siamo già avvicinati:
    mancano i div ecc., ma soprattutto sai come inserire il titolo?
    3) mancano i collegamenti alle immagini originali
    sei un grande!

  7. #7
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    oki, buon lavoro
    think simple think ringo

  8. #8

    OK!!!

    Tutto a posto ho modificato un po' il codice e puoi vederlo implementato (XHTML 1.1) qui e qui

    GRAZIE GRAZIE e ancora GRAZIE

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 © 2025 vBulletin Solutions, Inc. All rights reserved.