Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

generare thumbnail

Problemi di HTML? Di PHP, ASP, .NET, JSP, Perl, SQL, JavaScript, Visual Basic..?
Vuoi realizzare programmi in C, C++, Java, Ruby o Smalltalk, e non sai da che parte cominciare?
Entra qui e troverai le risposte!

Moderatori: Triumph Of Steel, archimede

generare thumbnail

Postdi alice1 » 05/07/06 11:31

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: Seleziona tutto
<?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: Seleziona tutto
<?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: Seleziona tutto
<?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 src="ridimensiona.php?Foto=<?php print ("$riga[Foto]");?>">
</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: Seleziona tutto
nome_sito/ridimensiona.php?Foto=\fotografie\nome_immagine
mi appare questo messaggio di errore

Codice: Seleziona tutto
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: Seleziona tutto
  $img=imagecreatefromjpeg($Foto);

Se invece modifico l'orientamento degli slash
Codice: Seleziona tutto
nome_sito/ridimensiona.php?Foto=/fotografie/V_TO_00001.jpg

mi dice
Codice: Seleziona tutto
/fotografie/V_TO_00001.jpg NON ESISTE!


Qualcuno può darmi un consiglio?
alice1
Utente Junior
 
Post: 28
Iscritto il: 29/03/06 12:51

Sponsor
 

Torna a Programmazione


Topic correlati a "generare thumbnail":

thumbnail youtube
Autore: sagara_939
Forum: Forum off-topic
Risposte: 3

Chi c’è in linea

Visitano il forum: Nessuno e 7 ospiti