RISOLTO
![]()
L'unica spiegazione che sono riuscito a trovare era proprio sul sito php.net, esattamente al seguente link:
http://it.php.net/manual/en/function...ized.php#52239
ed ecco il codice come serviva a me
Funziona alla grandeCodice PHP:$_query = "SELECT file FROM immagini WHERE id = '".$_GET['id_img']."' " ;
$_risultato = mysql_query($_query) or die('Query non valida: ' . mysql_error()) ;
$_db_file = mysql_fetch_array($_risultato);
$_file_immagine = microtime().'.jpg' ;
$_file_temporaneo = fopen($_file_immagine, 'w+') ;
fwrite($_file_temporaneo, $_db_file['file'] ) ;
fclose($_file_temporaneo) ;
$_immagine_sorgente = imagecreatefromjpeg($_file_immagine) ;
list($_larghezza_originale,$_altezza_originale) = getimagesize($_file_immagine) ;
unlink($_file_immagine) ;
$_nuova_larghezza = 160 ;
$_nuova_altezza = 120 ;
$_immagine_ridimensionata = imagecreatetruecolor($_nuova_larghezza,$_nuova_altezza) ;
imagecopyresized($_immagine_ridimensionata,$_immagine_sorgente,0,0,0,0,$_nuova_larghezza,$_nuova_altezza,$_larghezza_originale,$_altezza_originale) ;
header('Content-type: image/jpeg') ;
imagejpeg($_immagine_ridimensionata) ;
imagedestroy($_immagine_ridimensionata) ;
![]()
Logicamente nello script vanno integrati anche i dati per la connessione al database che ho ommesso per motivi pratici.
Si puo' notare che ho messo delle dimensioni fisse per creare la miniatura, questo perchè le immagini che ho nel database sono tutte delle stesse dimensioni, ossia 600x450 pixel e quindi 160x120 sono in proporzione. Se le immagini originali avessero dimensioni diverse si dovrebbero fare le opportune proporzioni per il ridimensionamento.
Lo stesso dicasi per l'estensione che è sempre .jpg
![]()

RISOLTO
Rispondi quotando