Visualizzazione risultati 1 fino 20 di 20

Discussione: upload file-permessi

  1. #1
    Guest

    Question upload file-permessi

    ciao a tutti ... ho la necessita' di far caricare dei semplici file txt o al massimo xls tramite script php... vi posto il codice:
    form di ricerca e caricamento del file (caricai.php)
    Codice PHP:
    <form action="carica.php" method="post" enctype="multipart/form-data">
    <
    input type="file" name="upfile">
    <
    input type="hidden" name="MAX_FILE_SIZE" value="1000000">
    <
    input type="submit" value="Invia il file">
    </
    form>
    pagina di caricamento sul web
    Codice PHP:
    // 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="caricati";
    // 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"]);
    }
    header("Location:caricai.php");
    ?>
    in locale funziona quasi tutto correttamente (devo ancora capire perchè non carica certi tipi di file)

    una volta caricati i file php sul mio sapzio su AV mi compare sempre la scritta
    Impossibile spostare il file, controlla l'esistenza o i permessi della directory dove fare l'upload.

    che devo fare come mai???

  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

    Hai creato la cartella "caricati"?

    P.S.: Sposto nella sezione dedicata al PHP.
    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

    yes

    in teoria poi questa cartella cambierà a seconda dell' utente che si collega ...

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

    Predefinito

    Prova a modificare allora "$upload_dir/$file_name" con $upload_dir."/."$file_name.
    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

  5. #5
    Guest

    Predefinito

    fatto tutto... ok grazie ora però l' ultimo probleminoche ho è questo: ho questo ciclo che dovrebbe farmi vedere cosa ho caricato dentro la cartella di cui sopra:
    Codice PHP:
    if ($dir = @opendir("caricati")) {
    while ((
    $file = readdir($dir)) !== false) {
    if(
    $file!="." AND $file!=".."){
    if(
    is_file($file)){ echo $file." FILE<br>";}
    if(
    is_dir($file)){ echo $file." DIR<br>";}
    }
    }
    closedir($dir);
    }
    che dovrebbe dirmi quali sono le cartelle e quali i file... ma non mi visualizza nulla .... se invece elimino il controllo dentro l IF (cioè mostro tutto senza distinzione) allora mi compare tutto quanto file+cartelle...

    dove ho sbagliato???

    grazie

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

    Predefinito

    Devi modificare i due if in questo modo:
    Codice PHP:
    if(is_file("caricati/".$file)){ echo $file." FILE<br>";}
    if(
    is_dir("caricati/".$file)){ echo $file." DIR<br>";}
    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

  7. #7
    Guest

    Predefinito

    wow sei fenomenale...

    grazie!

  8. #8
    Guest

    Predefinito

    Ciao ragazzi io riesumo questo post perkè lo script è esattamente lo stesso ma non riesco ad ovviare al problema:

    se sostituisco "$upload_dir/$file_name" con $upload_dir."/."$file_name.

    mi da quest'errore esattamente sulla riga ke modifico

    Parse error: syntax error, unexpected T_VARIABLE

    io lo script l'ho preso da qui
    http://php.html.it/articoli/leggi/848/upload-con-php/4/

    questo è il mio codice
    <?

    // 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"] . "/cfilm";

    // 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";
    ?>

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

    Predefinito

    Fai così:
    Codice:
    $upload_dir."/".$file_name
    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

  10. #10
    Guest

    Predefinito

    così l'errore è questo

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

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

    Predefinito

    Esiste la cartella "cfilm" nella root?
    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

  12. #12
    Guest

    Predefinito

    si per esistere esiste i diritti sono settati a 777

    io l'unico dubbio ke ho è questo

    $upload_dir = $_SERVER["DOCUMENT_ROOT"] . "/cfilm";

    e poi la sintassi di questa stringa

    move_uploaded_file($_FILES["upfile"]["tmp_name"], $upload_dir."/."$file_name.)

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

    Predefinito

    Al posto di:
    Codice PHP:
    $upload_dir = $_SERVER["DOCUMENT_ROOT"] . "/cfilm";
    Prova a mettere:
    Codice PHP:
    $upload_dir = "cfilm";
    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

  14. #14
    Guest

    Predefinito

    nessun cambiamento

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

    Predefinito

    Dimmi dove sta lo script e dove sta la cartella in cui devi caricare i file.
    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

  16. #16
    Guest

    Predefinito

    sono entrambi nella cartella cfilm

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

    Predefinito

    Se i file li carichi nella stessa cartella in cui è presente il file PHP, puoi modificare questa riga:
    Codice PHP:
    move_uploaded_file($_FILES["upfile"]["tmp_name"], $upload_dir."/."$file_name.)
    In questo modo:
    Codice PHP:
    move_uploaded_file($_FILES["upfile"]["tmp_name"],$file_name)
    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

  18. #18
    Guest

    Predefinito

    ok così funziona

    però ora stavo pensando se i file sono un po grandi si può inserire una barra di caricamento????

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

    Predefinito

    Devi cercare degli script di upload che utilizzo AJAX.
    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

  20. #20
    Guest

    Predefinito

    ok
    ora do un occhio

Regole di scrittura

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