Visualizzazione dei risultati da 1 a 8 su 8

Discussione: $_file

  1. #1

    $_file

    mi arriva da una form tramite l'input type file il file gatto,ora io vorrei nella pagina controllo.php prendere il file gatto e metterlo nella cartella siamese,nella cartella persiano,nella cartella gatto comune cioè prendere il file e memorizzarlo su più cartelle ora se la cartella è una funziona benissimo se invece le cartelle aumentano anche solo due non memorizza niente nella seconda cartella cioè prende il file lo memorizza nella prima cartella e nella seconda niente.

    $_FILE pensavo funzionasse come post o get cioè una volta inviati si potessero prendere e manipolare come si vuole invece con $_FILE una volta preso non è più utilizzabile.

    sapete darmi una soluzione a questo problema???

  2. #2
    quando viene creata la variabile $_FILES, il file uploadato viene copiato in una cartella temporanea. Probabilmente non riesci a inserirlo in più cartelle perché sposti il file all'inizio invece di copiarlo. Prova a postare il codice che usi

  3. #3
    $file_name = ($nuovonomefile) ? $nuovonomefile : $_FILES["nome_file"]["name"];
    if(is_uploaded_file($_FILESnome_file"]["tmp_name"])) {
    move_uploaded_file($_FILES["nome_file"]["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 gatto," . $_FILES["nome_file"]["name"]);
    }

    in pratica mi legge la condizione if (is_uploaded_file(... e mi salta al messaggio die("Problemi nell'upload...???

  4. #4
    perché al primo giro tu sposti il file e quindi al secondo non è più reperibile...

    prova con la funzione copy() ricordandoti alla fine di cancellare il file temporaneo

  5. #5
    ho provato così:

    $file_name = ($nuovonomefile) ? $nuovonomefile : $_FILES["nome_file"]["name"];
    $file = $_FILES["nome_file"]["tmp_name"];
    $newfile = 'nuovo';
    if (!copy($file, $newfile)) {
    echo "Copia di $file non riuscita ...\n";
    }

    if(is_uploaded_file($newfile)) {
    move_uploaded_file($newfile, "$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 gatto," . $_FILES["nome_file"]["name"]);
    }
    unlink($newfile);

    mi legge die("Problemi nell'upload.... direttamente al primo giro!!!

    perchè??

  6. #6
    scusa, ma il comando copy in quel modo a che serve?

  7. #7
    è un pò confusionario...

    sei vuoi effettuare un controllo sul file che carichi, prima effettui il controllo con is_uploaded_file

    se questo controllo va a buon fine, allora copy il contenuto sulle altre cartelle,

    ricorda però che la variabile $newfile deve contenere il percorso del file con il suo nome:

    esempio $newfile='/cartella/nomefile.txt'

    se vuoi che il nuovo file abbia lo stesso nome fai cos':
    $newfile='/cartella/'.$_FILES['nome_file']['name'];

  8. #8
    Grazie grazie grazie sono riuscito ad ottenere ciò che volevo,mi ero un pò(tanto) incasinato!!!

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.