ciao a tutti, ho un form che gestisce degli upload di alcune immagini usando una funzione che si trova su un file esterno e memorizza la lista dei file su una tabella del database (ecco perchč la chiamata alla funzione Filesave) tutto funziona bene, ma il problema č che adesso devo ridimensionare le foto in automatico al termine di ogni upload.

ho trovato una classe che in pratica č perfetta per il mio scopo: riceve in ingresso il nome del file, la max dimensione di altezza e larghezza e regola tutto in automatico in modo che nč una nč l'altra dimensione superino quelle max consentite.

l'ho provata da sola e va bene anche questa.

il problema č che non so proprio come fare a metterle insieme....

metto qui i codici:

funzione x l'upload

Codice PHP:
function uploadImage($filecontrol,$linkback) {
    
$est=strtolower(substr($_FILES[''.$filecontrol]['name'],-3,3));
    if (
$est!="") {            
            if (
$est=="jpg" || $est=="gif") {
                if (isset(
$_FILES[''.$filecontrol]) && is_uploaded_file($_FILES[''.$filecontrol]['tmp_name'])) // NUOVA IMMAGINE
                
{
                    if (
move_uploaded_file($_FILES[''.$filecontrol]['tmp_name'], $_SESSION['PathUpload'].$_FILES[''.$filecontrol]['name'])==FALSE
                    {
                        if(
$_FILES[''.$filecontrol]['error']==2) {
                            
redirect_rel($linkback);
                            exit();
                        } else {
                            
redirect_rel($linkback);
                            exit();
                        }
                    } else {
                        
$randomrandomKey("",8);
                        
$valo=Filesave(0,$random,$est,2);
                    }
                    if (
$valo>0) {
                        if(!
rename($_SESSION['PathUpload'].$_FILES[''.$filecontrol]['name'],$_SESSION['PathUpload'].$valo."_".$random.".".$est ))
                            
$logo=0;
                        else
                            
$logo=$valo;
                    }
                }
            }        
            if (
$logo=="" || $logo<0$logo=0;
    } else {
        
$logo=0;
    }
    
    return 
$logo;


esempio di utilizzo della classe resize:
Codice PHP:

<?php
include("classe_resize.php");
$resize = new resize;
$resize->urlimage "folder/immagine.jpg";
$resize->fisso 0;
$resize->maxX 200;
$resize->maxY 100;
$resize->latofisso "X";
$resize->folder "public/img/";
$resize->newName "nuovonome.jpg";
$resize->go();
?>
se passo come urlimage la variabile $logo non dovrebbe funzionare bene?
ho provato a mettere la seconda porzione di codice direttamente all'interno della funzione, ma uppa il file e fa come se neanche ci fosse il resize...

se poi mettessi come newName metto sempre la variabile $logo sovrascrive il file originale senza problemi?


grazie a tutti