Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 31
  1. #1

    anteprima immagini presenti in una cartella

    ho un codice che mi fa vedere tutte le immagini che ho dentro una determinata cartella, e funziona bene, solo che io vorrei che al posto del semplice nome dell'immagine mi facesse vedre un'anteprima dell'immagine [dimensioni le sceglierò poi, indicativamente 1/6 dell'originale, ma questo non dovrebbe avere importanza]. questo è il codice che mi stampa i nomi delle immagini:


    while (false!==($file = readdir($handle))) {
    if ($file != "." && $file != "..") {
    if (!is_dir($currentdir . "/" . $file)) {
    $file_aus = explode('.', $file);
    $file_aus = $file_aus[0];
    print "[*]<a href=postcards.php?show=$currentdir/$file&cat=$cat>$file_aus</a>";
    }
    }
    }


    ho cercato ma non sono riuscito a trovare nulla che facessa al caso mio, voi avete qualche soluzione a portata di mano?

    grazie mille!
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  2. #2
    dovresti usare un sistema di creazione delle thumbnails (con le GD) in una pag chiamata image.php a cui poi passi dentro il while il nome img. dovrai richiamare il file image.php?id=nomeimg dal tag [img][/img] stampato all'interno del ciclo.

    ci sono vecchi 3d con dei pezzi di codice che credo ti serviranno.

  3. #3
    Se non ti serve ridimensionare "al volo" le immagini, puoi provare così:

    codice:
    
    
    Hey Barney, fantastico, hai portato un barile di birra!! Già, dove posso riempirlo?
    http://www.ibolli.it

  4. #4
    altrimenti, per ridimensionare, io uso questo mio codice

    codice:
    				
    $source_img = @imagecreatefromjpeg("source.jpg");
    if (!$source_img) { # gestione errore }
    # creazione immagine piccola
    $ratio = imagesx($source_img) / imagesy($source_img);
    $dest_small = imagecreatetruecolor($WIDTH_IMG_SMALL, $WIDTH_IMG_SMALL/$ratio);
    # riempimento immagini
    imagecopyresampled($dest_small, $source_img, 0, 0, 0, 0, imagesx($dest_small), imagesy($dest_small), imagesx($source_img), imagesy($source_img));
    # stampa (o salvataggio) immagine
    imagejpeg($dest_small);
    Hey Barney, fantastico, hai portato un barile di birra!! Già, dove posso riempirlo?
    http://www.ibolli.it

  5. #5
    ... dimenticavo

    $WIDTH_IMG_SMALL è una costante che imposti con larghezza che vuoi tu

    l'altezza non serve perchè dò per scontato che vuoi mantenere le proporzioni.

    "source.jpg" è l'immagine sorgente; puoi mettere tutto il blocco dentro il ciclo e cambiare il nome con la variabile $file
    Hey Barney, fantastico, hai portato un barile di birra!! Già, dove posso riempirlo?
    http://www.ibolli.it

  6. #6
    ringrazio tutti per le risposte!

    @teazzo: grazie per il codice!però purtroppo non mi funziona. ho definito la costante, modificato la riga imagecreatefromjpeg con imagecreatefromgif [perché $file contient una gif] ma non mi funziona, non riesce a creare il file
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  7. #7
    Devi avere la possibilità di utilizzare le gb_lib, altrimenti non ti funzia
    I will use Google before asking dumb questions.
    http://www.weiterbildungsblog.de/archives/google.jpg

  8. #8
    ricevi qualche errore?

    se devi usare le gif attiva le gd
    se devi usare le jpeg attiva le gd2

    ciao
    Hey Barney, fantastico, hai portato un barile di birra!! Già, dove posso riempirlo?
    http://www.ibolli.it

  9. #9
    Ok, un passo aventi l'abbiamo fatto!
    Ho modificato le immagini in modo che siano tutte jpeg, ora non mi restituisce più nessun errore, ma al posto di stmpare l'immagine mi stampa una seria "quasi infinita" di caratteri strani [penso sia il corrispondente binario dell'immagine].
    Altra cosa che sbagliavo prima era nel passare il parametro file alla funzione imagecreatefromjpeg, che passavo solo il nome del file e non il percorso per arrivare al file [si lo so sono ].

    Dunque, posto il codice completo che uso io:
    codice:
    while (false!==($file = readdir($handle))) { 
        if ($file != "." && $file != "..") { 
    	if (!is_dir($currentdir . "/" . $file)) {
    		print $file;
    
    	   	$my_file = 'images/Natale-2004/'.$file;
    		$source_img = @imagecreatefromjpeg($my_file);
    		if (!$source_img) { # gestione errore 
    		}
    		# creazione immagine piccola
    		$ratio = imagesx($source_img) / imagesy($source_img);
    		$dest_small = imagecreatetruecolor($WIDTH_IMG_SMALL, $WIDTH_IMG_SMALL/$ratio);
    		# riempimento immagini
    		imagecopyresampled($dest_small, $source_img, 0, 0, 0, 0, imagesx($dest_small), imagesy($dest_small), imagesx($source_img), imagesy($source_img));
    		# stampa (o salvataggio) immagine
    		imagejpeg($dest_small);
    
           $file_aus = explode('.', $file);
    	   $file_aus = $file_aus[0];
    	   print "[*]<a href=postcards.php?show=$currentdir/$file&cat=$cat>$file_aus</a>";
    	  }
        } 
    }
    come detto prima però stampa una serie di caratteri incomprensibili. Dov'è l'errore?come lo posso risolvere?

    Vi ringrazio!
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  10. #10
    ho provato a fare un semplice echo della variabile $dest_small e non so a cosa possa servire, comunque per ogni img mi restituisce Resource id #n [dove n è un numero intero]
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

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.