Visualizzazione dei risultati da 1 a 2 su 2

Discussione: generare Thumbnail

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    38

    generare Thumbnail

    Non riesco proprio a risolvere questo problema.
    Ho un db mysql con un campo Foto nel quale viene salvato il percorso delle immagini contenute in una cartella dal nome fotografie...ora quello che vorrei è che nella visualizzazione dei risultati delle queryes che l'utente compie sul db l'immagine apparisse ridimensionata e non nelle dimensioni originali (esagerate !!!).
    Leggendo qua e in là ho provato ad applicare un pò di codice...ma niente.
    Vi posto le pagine:
    config.php
    codice:
    <?php
    $db_host="";
    $db_user="";
    $db_password="";
    $db_database="";
    $connessione=mysql_connect($db_host,$db_user,$db_password) or die ("Errore nella connessione al Mysql:" . mysql_error());
    mysql_select_db($db_database,$connessione) or die ("Errore nella selezione del db:" . mysql_error());
    
    $larghezza=200;
    $altezza=200;
    $proporzioni=1;
    $qualità=100;
    $nomefileridimensiona="ridimensiona.php";
    ?>
    ridimensiona.php
    codice:
    <?php
    $db_host="";
    $db_user="";
    $db_password="";
    $db_database="";
    $connessione=mysql_connect($db_host,$db_user,$db_password) or die ("Errore nella connessione al Mysql:" . mysql_error());
    mysql_select_db($db_database,$connessione) or die ("Errore nella selezione del db:" . mysql_error());
    
    require_once("config.php"); 
    define("LARGHEZZA",$larghezza); 
    define("ALTEZZA",$altezza); 
    define("PROPORZIONI",$proporzioni); 
    define("QUALITA",$qualità); 
    
    function ridimensiona($Foto) { 
        $header=array(1=>"gif",2=>"jpeg",3=>"png",4=>"jpg"); 
        // RIDIMENSIONAMENTO DELLA FOTO 
        $dimensioni=getimagesize($Foto); 
        if ($dimensioni[2] == 1) 
            $img=imagecreatefromgif($Foto); 
        if (($dimensioni[2] == 2) || $dimensioni[2] == 4) 
            $img=imagecreatefromjpeg($Foto); 
        elseif ($dimensioni[2] == 3) 
            $img=imagecreatefrompng($Foto); 
        $altezza=(PROPORZIONI) ? ceil($dimensioni[1]/$dimensioni[0]*LARGHEZZA) : ALTEZZA; 
        $im=Imagecreatetruecolor(LARGHEZZA, $altezza); 
        imagecopyresampled($im,$img,0,0, 0,0, LARGHEZZA,$altezza, $dimensioni[0],$dimensioni[1]); 
        header("content-type: image/".$header[$dimensioni[2]]); 
        imagejpeg($im,"",QUALITA); 
        imagedestroy($im); 
    } 
    
    $Foto=isset($_GET['Foto']) ? $_GET['Foto'] : ""; 
    if(file_exists($Foto)) 
        ridimensiona($Foto); 
    else 
        echo "$Foto NON ESISTE!"; 
    ?>
    pagina con query di ricerca (nella quale l'immagine dovrebbe vedersi ridimensionata)
    codice:
    <?php 
    $db_host="";
    $db_user="";
    $db_password="";
    $db_database="";
    $connessione=mysql_connect($db_host,$db_user,$db_password) or die ("Errore nella connessione al Mysql:" . mysql_error());
    mysql_select_db($db_database,$connessione) or die ("Errore nella selezione del db:" . mysql_error());
    
    $query="SELECT Foto FROM fotoaereeverticali WHERE AnnoRipresa LIKE '%$_POST[AnnoRipresa]%''"; 
    
    $risultato=mysql_query($query,$connessione) or die ("Errore nella query:" . mysql_error()); 
    
    while($riga=mysql_fetch_array($risultato))
    {?>
    <tr>
    <td colspan="2">
    [img]ridimensiona.php?Foto=<?php print ([/img]">
    </tr>
    } 
    ?>
    Il risultato che ottengo è la classica iconcina con la x rossa, ma sulle proprietà mi da
    Indirizzo(URL)= nome_sito/ridimensiona.php?Foto=\fotografie\nome_immagine

    se provo a chiamare direttamente nell'indirizzo del browser
    codice:
    nome_sito/ridimensiona.php?Foto=\fotografie\nome_immagine
    mi appare questo messaggio di errore

    codice:
    Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 2848 bytes) in /home/mhd-01/www.space2place.org/htdocs/ridimensiona.php on line 41
    La linea 41 è questa:
    codice:
      $img=imagecreatefromjpeg($Foto);
    Se invece modifico l'orientamento degli slash
    codice:
    nome_sito/ridimensiona.php?Foto=/fotografie/V_TO_00001.jpg
    mi dice
    codice:
    /fotografie/V_TO_00001.jpg NON ESISTE!
    Qualcuno può darmi un consiglio?

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    38
    Scusate...involontariamente ho ri-postato un mio messaggio...

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.