Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    63

    function con resize + upload

    Sto utilizzando del codice che mi esegue il resize, e me lo esegue.
    Poi vorrei copiare l'immagine ridimensionata in una cartella, ma questo non lo esegue.
    Qualcuno può osservare questo codice e dirmi quali sono gli errori, perfavore?

    <?php


    //function CreaThumbnail($IMG, $tnX, $Estensione)
    //{
    $IMG = "TheSimpson/BartShout.jpg" ;



    //if(strcasecmp($Estensione, "jpg") == 0 || strcasecmp($Estensione, "jpeg") == 0)
    //{
    $immagine = ImageCreateFromJPEG($IMG); //Creo un'immagine a partire da un file JPG
    //}
    //else if(strcasecmp($Estensione, "gif") == 0)
    //{
    // $immagine = ImageCreateFromGIF($IMG); //Creo un'immagine a partire da un file GIF
    //}
    //else if(strcasecmp($Estensione, "png") == 0)
    //{
    // $immagine = ImageCreateFromPNG($IMG); //Creo un'immagine a partire da un file PNG
    //}
    $LarghezzaImmagine = imagesx($immagine); //Misuro la larghezza dell'immagine
    $AltezzaImmagine = imagesy($immagine); //Misuro 'altezza dell'immagine

    //$proporzioneX = $LarghezzaImmagine / $tnX; //Calcolo la proporzione di ridimensionamento della larghezza
    //$tnY = $AltezzaImmagine / $proporzioneX; //Calcolo l'altezza del thumbnail

    $thumbnail = ImageCreateTrueColor(100, 120); //Creo il thumbnail in TrueColor

    $dx = 0; //Punto di inizio sull'asse x del thumbnail
    $dy = 0; //Punto di inizio sull'asse y del thumbnail
    $w = 100+1; //Larghezza del thumbnail
    $h = 120+1; //Altezza del thumbnail

    $file_da_uplodare=ImageCopyResized($thumbnail, $immagine, $dx, $dy, 0, 0, $w, $h, $LarghezzaImmagine, $AltezzaImmagine); //Ridimensiono $immagine in $thumbnail

    ImageJPEG($thumbnail,"",80); //Creo il thumbnail e lo mostro a video



    //function UploadFile ($File, $Tipo, $DirectoryPrincipale, $SubDirectory)
    //{

    /*

    $NomeFile = $_FILES["fileDaUplodare"] ['name'];
    $NomeFile = str_replace(" ", "_", $NomeFile);
    $FileSplit = explode(".",$NomeFile); // verifica il tipo di estensione del file, controllando
    $Estensione = array_pop($FileSplit); // le ultime letere dopo l'ultimo punto

    if(strcasecmp($Estensione, "jpg") != 0 && strcasecmp($Estensione, "jpeg") != 0 && strcasecmp($Estensione, "gif") != 0 && strcasecmp($Estensione, "png") != 0)
    {
    return "Il file inserito non è accettato";
    }
    */

    if (is_uploaded_file($file_da_uplodare))
    {
    $DestinazioneFile = "foto_arrivo/BartShout.jpg";
    if(move_uploaded_file($file_da_uplodare, $DestinazioneFile))
    {
    return "Upload eseguito con successo";
    }
    else
    {
    return "Impossibile eseguire l'upload";
    }
    }
    else
    {
    return "Il file non è stato caricato";
    }
    //}

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    non capisco dove richiami le funzioni... intendi che ti compare sempre "impossibile eseguire l'upload"?

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    63
    Ho fatto una una semplice pagine html paginainiziale.php che è la seguente:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>prova resiza</title>
    </head>

    <body>


    [img]prova_1.php[/img]
    </html>

    la quale richiama prova_1.php, che corrisponde allo script che ho esposto nel primo messaggio.
    Il tutto fa si che mi viene stampato a video il thumbnail, ma l'upload non viene eseguito.
    Noto che l'upload non viene eseguito, in quando nella cartella foto_arrivo non è presente il thumbnail che voglio uplodare.
    Per un ulteriore chiarimento ti sintetizzo lo scopo dello sript in tre punti:
    -creare un thumbnail, partendo da un immagine di tipo jpeg;
    -stampare a video il thumnail;
    -uplodare il thumbnail creato in una cartella che si chiama foto_arrivo.
    I primi due punti vengono eseguiti, ma il terzo no.
    Il codice relativo ai primi due punti è corretto e ne sono certo, in quanto lo studiato ed usato anche in altre situazioni.
    Relativamente al terzo punto non sò se è esatto, è stata una mia idea, ma non so se è impossibile o se manca qualcosa ( TI RIPETO LO SCOPO DEL TERZO è QUELLO DI UPLODARE UN THUMBNAIL CREATO A PARTIRE DA UN IMMAGGINE DI TIPO JPEG E JPG).
    Spero di essere stato più chiaro.

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    forse il problema è nel concetto di upload... non c'è nessun FORM con INPUT TYPE='FILE' che serva a caricare i file sul server... ho capito che i commenti davanti alle direttive "function" servono per eseguire direttamente il codice senza dover richiamare la funzione. Se tutte le azioni avvengono sul server non occorre alcun UPLOAd... semplicemente subito prima di:

    Codice PHP:
    ImageJPEG($thumbnail,"",80); //Creo il thumbnail e lo mostro a video 
    aggiungi una riga che salva $thumbnail su disco, tipo:
    Codice PHP:
    file_put_contents('nomedelfilesulserver.jpg'$thumbnail); 

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    63
    Hai ragione, sbaglio a dire che devo effettuare l'upload. In effetti voglio salvare il thumbnail in una cartella sul server.
    Ora provo ad utilizzare la funzione che mi hai suggerito e ti informo su cosa accade.

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    ok, prova.

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    63
    Ho provato ma il risultato è negativo.
    Crea un file, ma non è una foto.
    Ho provato anche ad utilizzare la funzione passandole un file jpg ( e non un thumbnail) ma il risultato è sempre lo stesso:
    da vita ad un nuovo file nella cartella di destinazione, ma questo file non è una foto, ma da quello che ho notato semplicemente mi scrive dentro al file il nome della foto che le ho passato.
    Posso confermare che mi crea un file di txt. Difatti scrivendo l'istruzione
    file_put_contents( "foto_arrivo/fotonew.txt","TheSimpson/Omar00.jpg" );
    mi da vita vita appunto ad un file al''interno del quale è scritto il nome del file da copiare.

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    ah... forse ho capito... vabbè... fai così:

    PRIMA di ImageJPEG($thumbnail,"",80);

    metti ImageJPEG($thumbnail,'nomedelfile.jpg',80);

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    63
    Il problema è che file_put_contents mi crea un file ma non scrive in questo file la foto, ma bensì solo il titolo dellla foto.
    Questo lo fà anche se passo allo funzione un jpg che non è il thumbnail.
    Comunque provo a fare il tentativo che mi hai suggerito.

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    63
    Il tuo suggerimento dà l'esito sperato.
    Praticamente mi copia il thumbnail nel file di destinazione che indico in ImageJPEG.
    Adesso voglio fare un pò di prove per togliermi dei dubbi.
    Magari poi posto il risultato del mio lavoro, e se non riesco a risolvere i dubbi che ho te lo comunico.
    Grazie mille. Sei stato gentilissimo.

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.