Visualizzazione dei risultati da 1 a 5 su 5

Discussione: aiuto in uno script

  1. #1

    aiuto in uno script

    salve, premettendo ke io il php nn lo so usare.. mi servirebbe una (penso) piccola cosa:
    ho questo script

    codice:
    <?php  
     /***********************************************  
      * Snippet Name : File Uploader                *  
      * Scripted By  : Hermawan Haryanto            *  
      * Website      : http://hermawan.com *  
      * Email        : hermawan@codewalkers.com        *  
      * License      : GPL (General Public License) *  
      ***********************************************/   
      $numoffile = 5;  
      // Fix path of your file to be uploaded, don't forget to CHMOD 777 to this folder  
      $file_dir  = "/membri/dario/";  
      if ($_POST) {  
        for ($i=0;$i<$numoffile;$i++) {  
          if (trim($_FILES['myfiles']['name'][$i])!="") {  
            $newfile = $file_dir.$_FILES['myfiles']['name'][$i];  
            move_uploaded_file($_FILES['myfiles']['tmp_name'][$i], $newfile);  
            $j++;  
          }  
        }  
      }  
      if (isset($j)&&$j>0) print "Your file(s) has been uploaded.
    ";  
      print "<form method='post' enctype='multipart/form-data'>";  
      for($i=0;$i<$numoffile;$i++) {  
        print "<input type='file' name='myfiles[]' size='30'>
    ";  
      }  
      print "<input type='submit' name='action' value='Upload'>";  
      print "</form>";  
    ?>
    mi interesserebbe aggiungere un campo in cui indico la cartella in cui uploadare i file, ora mi spiego meglio:
    ho una cartella in cui ci sono varie sottocartelle, io devo salvare i file in una di queste (quindi sono tutte allo stesso livello), mi basterebbe una specie di campo dove scrivo il nome di una di queste, così da salvarmi i file lì!

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    24

    Ora ti spiego...

    La cosa è molto semplice...
    Tu hai una variabile contenente il path dove uploadare i tuoi file:
    $file_dir = "/membri/dario/";
    nel form di inserimento aggiungi un input type text (dove inserisci il nome della cartella di destinazione.. supponiamo con name="folder".
    poi modifichi la seguente riga:
    $newfile = $file_dir.$_FILES['myfiles']['name'][$i];
    in questo modo:
    codice:
    $newfile = $file_dir.$_POST['folder'].$_FILES['myfiles']['name'][$i];
    ed in teoria il gioco è fatto... al posto del campo di testo, potresti esuberare e listare i folder contenuti in $file_dir e metterli selezionabili in una select (ovvio sempre nel form), onde evitare problemi di errori ortografici, ma questa è un'altra storia.. Fammi sapere se funziona e se è tutto ok ;P
    LH Team Open Project Embedded-source Nurse

  3. #3
    ora provo e ti dico... grazie mille cmq!

  4. #4
    ok ho modificato il codice così:
    codice:
    <?php  
     /***********************************************  
      * Snippet Name : File Uploader                *  
      * Scripted By  : Hermawan Haryanto            *  
      * Website      : http://hermawan.com *  
      * Email        : hermawan@codewalkers.com        *  
      * License      : GPL (General Public License) *  
      ***********************************************/   
      $numoffile = 5;  
      // Fix path of your file to be uploaded, don't forget to CHMOD 777 to this folder  
      $file_dir  = "/membri2/dariodario/";  
      $add_slash = "/";
      if ($_POST) {  
        for ($i=0;$i<$numoffile;$i++) {  
          if (trim($_FILES['myfiles']['name'][$i])!="") {  
            $newfile = $file_dir.$_POST['folder'].$add_slash.$_FILES['myfiles']['name'][$i];
            move_uploaded_file($_FILES['myfiles']['tmp_name'][$i], $newfile);  
            $j++;  
          }  
        }  
      }  
      if (isset($j)&&$j>0) print "Your file(s) has been uploaded.
    ";  
      print "<form method='post' enctype='multipart/form-data'>"; 
      print "<input type='text' name='folder'>
    ";
      for($i=0;$i<$numoffile;$i++) {  
        print "<input type='file' name='myfiles[]' size='30'>
    ";  
      }  
      print "<input type='submit' name='action' value='Upload'>";  
      print "</form>";  
    ?>
    ho dovuto aggiungere lo "/" in una maniera un po' strana... ma funziona! grazie mille!

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    24

    i dettagli...

    Bene, mi fa piacere.. Tranquillo, se la slash era da aggiungere è da aggiungere.. potresti eliminare la variabile $add_slash e sostituirla con un semplice . "/" . oppure
    codice:
    $folder = $_POST['folder'] . "/";
    insomma, v a bene in tutti i modi
    LH Team Open Project Embedded-source Nurse

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.