Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    form per l'upload di file

    salve a tutti

    ho un problemino da risolvere



    ho una form per l'upload di un file su server


    quando l'utente seleziona il file, nel tag <input name="uploadFile" type="file" /> viene mostrato l'url del file selezionato

    es:
    C:\Documents and Settings\Administrator\Desktop\io.jpg


    prima che l'utente caricchi il file sul server, ho bisogno di fare alcuni controlli

    sul bottone SUBMIT faccio richiamare una funzione JS:

    <input type="submit" name="submitBtn" value="Upload" onselect="validate(getInputValue(this.form.uploadF ile));" />

    in pratica getInputValue ritorna il valore del campo che gli viene passato


    ma a quanto pare, non funziona per i tag type="file"




    qualcuno di voi sa come posso fare per passare la stringa selezionata dall'utente a JavaScript?




    grazie mille

  2. #2
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    Ciao mrtyler81,

    perché usi onselect?
    bisognerebbe vedere com'è fatta la funzione getInputValue
    perché non c'è nessun problema a leggere il value di un input type=file
    ti basta fare
    codice:
    validate(this.form.uploadFile.value);

  3. #3
    quando un utente preme "Sfoglia" e sceglie il file, nel campo stringa di Type appare il nome file completo

    io devo capire che tipo di file ha selezionato (es. jpeg, gif, pdf, txt) leggendo l'esensione dalla stringa

    quindi quando preme Upload, prima che venga eseguito lo script php per l'upload, voglio controllare (client-side) l'estensione del file

    quindi ho messo l'esecuzione della funzione JavaScript quando l'utente clicca Upload, e "abbandona" l'oggetto Sfoglia, <input name="uploadFile" type="file" onblur="validate(getInputValue(this.form.uploadFil e.value));" />

    on blur="..."



    che metodo mi conviene usare?

  4. #4
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    non so cosa fai con la funzione validate...
    se devi evitare il submit del form la cosa migliore è mettere una funzione che restituisce true o false all'onsubmit del form
    codice:
    <form onsubmit="return ControlloForm(this)">

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Per controllare l'estensione usa questo script (creato dal mitico Br1)
    codice:
    <html>
    <head>
    <title>UPLOAD</title>
    <script language="JavaScript1.2">
    <!--
    function precarica(){
    	nomeFile=document.thephoto.foto.value;
    if (nomeFile=="") return;
    // isolo l'estensione
    	extFile=nomeFile.substr(nomeFile.lastIndexOf(".")+1);
    // verifico che sia fra quelle permesse
    	permesse="#jpg#gif#png#JPG#GIF#PNG#";
    	if (permesse.indexOf("#"+extFile+"#")==-1) {
    		alert(extFile + " non e' un file permesso");
    		return false;
    	}  
    }
    
    -->
            </script>
    
    </head>
    <body>
    <table border="0" cellpadding="0" cellspacing="0" width="485" height="334">
     <tr>
    <td>
    <p align="center">
                            
                <form method="post" enctype="multipart/form-data" action="#" onsubmit="return precarica();" name="thephoto">
    
    <input type="file" name="foto" size="31"></td>
                                    </tr>
                                    <tr>
                                      <td colspan="2" align="right"><div align="center"></div></td>
                                    </tr>
    <tr><td>
    
                                            <p align="center">
    <input name="enter" type="submit" value=" Invio  ">
    
    </p>
                                        </td>
                                    </tr>
                              </table>
            </form>
    
    </body>
    
    </html>
    è un po datato ma fa il su lavoro, per modificare o aggiungere estensioni opera sulla variabile "permesse" .
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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.