Visualizzazione risultati 1 fino 3 di 3

Discussione: upload e resize di immagini cos'ha il mio script?

  1. #1
    Guest

    Predefinito upload e resize di immagini cos'ha il mio script?

    Non riesco a capire dove sbaglio
    ho fatto un piccolo script che mi carica e ridimensiona le immagini
    provando in locale funziona tutto correttamente (uso easyPHP 2.0.0.0)
    sul server non da errori ma non carica le immagini
    Ho settato con FileZilla i permessi della cartella a 777

    ho girato e rigirato per i forum ma non ho trovato la risposta

    metto qui lo script

    PRIMA PARTE

    Codice HTML:
    Caricamento nuova immagine <br>
    <form method="post" action="minip.php">
      Seleziona il file immagine (solo .jpg) <input type="file" name="foto"> <br>
      <input type="hidden" name="cartella" value="../IMGpag/">
      <input type="submit" value="Invia">
    </form>
    SECONDA PARTE

    Codice PHP:
    <?php
    // file minip.php

    $pathfile=$_POST['foto'];
    $destinazione=$_POST['cartella'];
    $maxdimminiatura=200;

    //definisco Path name e nomefile
    $percorso = explode("\\", $pathfile);
    $file=$percorso[count($percorso)-1];
    // non ho usato la variabile $_FILE da capire perchè


    if($file<>"")
    {
    //inserisco l'immagine nella variabile
    $immagine=imagecreatefromjpeg("$pathfile");
    //Inizio il resize
    $altezza=imagesy($immagine);
    $larghezza=imagesx($immagine);
    if (
    $altezza>$larghezza)
    $larghezzaminiatura=$larghezza/$altezza*$maxdimminiatura;
    else
    $larghezzaminiatura=$maxdimminiatura;
    //dimensione della larghezza l'altezza viene fatta in proporzione
    $altezzaminiatura=floor($altezza/($larghezza/$larghezzaminiatura));
    $miniatura=imagecreatetruecolor($larghezzaminiatura,$altezzaminiatura);
    imagecopyresized($miniatura,$immagine,0,0,0,0,$larghezzaminiatura,$altezzaminiatura,$larghezza,$altezza);
    //salvo e visualizzo l'immagine ridimensionata
    $destinazione="$destinazione$file";
    imagejpeg ($miniatura,$destinazione);

    imagedestroy($immagine);
    imagedestroy($miniatura);
    echo
    "immagine $destinazione registrata correttamente solo se la visualizzi <br>";
    echo
    "<img src=\"$destinazione\" ><br>";

    }
    ?>
    da quello che ho letto sul forum mi pare di aver fatto tutto correttamente, le funzioni dovrebbero essere supportate, non è che devo acquistare qualche tool da altervista?
    Ultima modifica di funcool : 26-06-2007 alle ore 08.37.21

  2. #2
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Quello script non carica i file ma semplicemente li sposta. Sul tuo computer funziona perché i file ci sono, su AlterVista non funziona perché i file non ci sono.
    Con Google potrai trovare moltissime guide e facendo una ricerca nel forum troverai moltissime discussioni che parlano di questo argomento.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  3. #3
    Guest

    Predefinito

    ecco ... era giusto il concetto che mi sfuggiva
    dovevo usare la funzione "move_uploaded_file"
    ora funziona tutto ... cioè no ... fa l'upload ma non ridimensiona
    (ma questo è un problema diverso ... )
    intanto grazie mille.


    EDIT:
    giusto per chiudere il discorso (lo script stavolta funziona)

    PRIMA PARTE

    Codice PHP:
    Caricamento nuova immagine <br>
    <
    form method="post" action="minip.php" enctype="multipart/form-data">
    Seleziona il file immagine (solo .jpg) <input type="file" name="fileselezionato"> <br>
    <
    input type="submit" value="Invia">
    </
    form>
    SECONDA PARTE

    Codice PHP:
    <?php
    // file minip.php
    // RECUPERO I PARAMETRI DA PASSARE ALLA FUNZIONE PREDEFINITA PER L'UPLOAD
    $cartella = '../IMGpag/';
    $percorso = $_FILES['fileselezionato']['tmp_name'];
    $nome = $_FILES['fileselezionato']['name'];
    // altre definizioni
    $maxdimminiatura=200;
    $fileminiatura=$cartella."M$nome";
    // ESEGUO L'UPLOAD CONTROLLANDO L'ESITO
    if (move_uploaded_file($percorso, $cartella . $nome))
    {
    print
    "Upload eseguito con successo";
    //inserisco l'immagine nella variabile
    $immagine=imagecreatefromjpeg($cartella . $nome);
    //Inizio il resize
    $altezza=imagesy($immagine);
    $larghezza=imagesx($immagine);
    if (
    $altezza>$larghezza)
    $larghezzaminiatura=$larghezza/$altezza*$maxdimminiatura;
    else
    $larghezzaminiatura=$maxdimminiatura;
    //dimensione della larghezza l'altezza viene fatta in proporzione
    $altezzaminiatura=floor($altezza/($larghezza/$larghezzaminiatura));
    $miniatura=imagecreatetruecolor($larghezzaminiatura,$altezzaminiatura);
    imagecopyresized($miniatura,$immagine,0,0,0,0,$larghezzaminiatura,$altezzaminiatura,$larghezza,$altezza);
    //salvo e visualizzo l'immagine ridimensionata
    //imagejpeg ($miniatura);
    imagejpeg ($miniatura, $fileminiatura); // registra la miniatura
    unlink ($cartella . $nome); //cancella il file non ridimensionato
    //imagejpeg ($miniatura);
    imagedestroy($immagine);
    imagedestroy($miniatura);
    echo
    "immagine $fileminiatura registrata correttamente<br>";
    echo
    "<img src=\"$fileminiatura\" ><br>";
    }
    else
    {
    echo
    "Si sono verificati dei problemi durante l'Upload";
    }
    ?>
    Ultima modifica di seneca : 26-06-2007 alle ore 13.41.20

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •