Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Upload file...

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2001
    residenza
    rimini, san marino
    Messaggi
    934

    Upload file...

    Devo dare la possibilità agli utenti della mia intranet di fare degli upload di file.

    Qual'è il metodo + facile per farlo?

    io ho un libro ma ci sto capendo poco...

    Ale

  2. #2
    guarda fra le pillole (le trovi nel thread in rilievo) mi sembra ci sia un guida esaustiva sugli upload in php

    Il Ticino è biancoblù
    DVDS delegato ufficiale

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2001
    residenza
    rimini, san marino
    Messaggi
    934
    La guida l'ho trovata, ma non capisco una cosa:


    <?

    // QUESTE RIGHE RENDONO LO SCRIPT COMPATIBILE CON LE VERSIONI
    // DI PHP PRECEDENTI ALLA 4.1.0
    if(!isset($_FILES)) $_FILES = $HTTP_POST_FILES;
    if(!isset($_SERVER)) $_SERVER = $HTTP_SERVER_VARS;

    /********************* VARIABILI DA SETTARE ********************/
    // Directory dove salvare i files Uploadati ( chmod 777, percorso assoluto)
    $upload_dir = $_SERVER["DOCUMENT_ROOT"] . "/upload";

    // Eventuale nuovo nome da dare al file uploadato
    $new_name = "";

    // Se $new_name è vuota, il nome sarà lo stesso del file uploadato
    $file_name = ($new_name) ? $new_name : $_FILES["upfile"]["name"];

    if(trim($_FILES["upfile"]["name"]) == "") {

    die("Non hai indicato il file da uploadare !");

    }

    if(@is_uploaded_file($_FILES["upfile"]["tmp_name"])) {

    @move_uploaded_file($_FILES["upfile"]["tmp_name"], "$upload_dir/$file_name")
    or die("Impossibile spostare il file, controlla l'esistenza o i permessi della directory dove fare l'upload.");

    } else {

    die("Problemi nell'upload del file " . $_FILES["upfile"]["name"]);

    }

    echo "L'upload del file " . $_FILES["upfile"]["name"] . " è avvenuto correttamente";

    ?>
    Come si vede qui all'inzio si dichiara che la directory temporanea in cui verranno messi i file è $upload_dir.

    La cosa che non capisco è:

    come fa php a dire al sistema che il file deve andare in quella dir?

    Non sò se mi sono spiegato.

    Ale

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2001
    residenza
    rimini, san marino
    Messaggi
    934
    Poi al di la del problema che ho posto precedentemente, adesso, nel mio stupidissimo script, dove sto sbagliando?



    $TMPDIR="/srv/www/agenti/htdocs/images/";
    $prima_immagine = $HTTP_POST_FILES['immagine_1']['tmp_name'];
    if (is_uploaded_file($prima_immagine)) {
    print ("






    ok!!!!!");
    }
    else {
    print ("






    errore");
    }
    Grazie dell'aiuto,
    Ale

  5. #5
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003
    [supersaibal]Originariamente inviato da pig_org
    La guida l'ho trovata, ma non capisco una cosa:



    Come si vede qui all'inzio si dichiara che la directory temporanea in cui verranno messi i file è $upload_dir.

    La cosa che non capisco è:

    come fa php a dire al sistema che il file deve andare in quella dir?

    Non sò se mi sono spiegato.

    Ale [/supersaibal]
    No.. il file viene messo su una cartella temporanea (se non sbaglio /tmp).
    $upload_dir è la cartella finale e definitiva in cui verrà salvato il file. Il php sa che il file uploadato viene messo in una determinata cartella con un nome temporaneo. move_uploaded_file() serve appunto a prendere il file dalla cartella temporanea e metterlo in quella definitiva.
    Come fa.. beh suppongo esegua comandi di shell di linux (tipo cp o mv) o di dos (move)

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2001
    residenza
    rimini, san marino
    Messaggi
    934
    Ah, ok, ho capito.

    Senti, ma dov'è l'errore qui?

    $TMPDIR="/srv/www/agenti/htdocs/images/";
    $prima_immagine = $HTTP_POST_FILES['immagine_1']['tmp_name
    '];
    if (is_uploaded_file($prima_immagine)) {
    print ("






    ok!!!!!");
    }
    else {
    print ("






    errore ");
    }

    Mi da sempre la scritta errore

    Grazie,
    Ale

  7. #7
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003
    Non uploadda il file.
    Hai messo enctype="multipart/form-data" nel tag form?

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2001
    residenza
    rimini, san marino
    Messaggi
    934
    Si, l'ho messo.

    Che errori/orrori ho fatto nello script?

    Ale

  9. #9
    Utente di HTML.it L'avatar di adiumx
    Registrato dal
    Jan 2005
    residenza
    Zurigo
    Messaggi
    353
    per non aprire un altro 3d, lo script postato da pig_org, funziona, ma mi da un messaggio di errore:

    Impossibile spostare il file, controlla l'esistenza o i permessi della directory dove fare l'upload.

    la cosa che mi perplime è che la directory esiste, e ho messo i permessi lettura/scrittura per tutti i gruppi. Ho un mac os x, con apache, e php 4.3.10
    sapete cosa potrebbe essere il problema?

  10. #10
    Utente di HTML.it L'avatar di adiumx
    Registrato dal
    Jan 2005
    residenza
    Zurigo
    Messaggi
    353
    up

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.