Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    752

    problema di controllo file

    Ciao
    Ho trovato e adattato questo script per controllare il tipo di file da uplodare:

    //check file type.
    var extension = new Array();
    var fieldvalue = document.file_upload.File1.value;
    extension[0] = ".avi";
    // No other customization needed.
    var thisext = fieldvalue.substr(fieldvalue.lastIndexOf('.'));
    for(var i = 0; i < extension.length; i++) {
    if(thisext == extension[i]) { return true; }
    }
    alert("ATTENZIONE!! L'estensione del file non è corretta!");
    return false;

    In coda a questo script c'è il resto che mi permette di uplodare il mio file.
    Quando il file non è corretto questo script lavora perfettamente non permettendomi di caricare un file errato ma, purtroppo quando il mio file è ok lo script blocca tutto il resto.
    Come posso fare per fare proseguire correttamente il mio script rimanente?

    Grazie
    Comunque Grazie

  2. #2
    Ciao,

    il problema è che il pezzo di codice da te riportato presenta dei comandi di "return", sia in caso positivo sia in caso negativo. Tali comandi provocano effettivamente la terminazione della funzione javascript in cui il codice è contenuto. Per ovviare a questo problema, potresti definire una nuova funzione, in cui riporti il codice javascript che effettua il controllo sull'estensione: tale funzione sarà poi richiamata nella funzione in cui hai il resto del codice che permette l'upload del file.

    Ad esempio:

    function controllaestensione() {
    //check file type.
    var extension = new Array();
    var fieldvalue = document.file_upload.File1.value;
    extension[0] = ".avi";
    // No other customization needed.
    var thisext = fieldvalue.substr(fieldvalue.lastIndexOf('.'));
    for(var i = 0; i < extension.length; i++) {
    if(thisext == extension[i]) { return true; }
    }
    alert("ATTENZIONE!! L'estensione del file non è corretta!");
    return false;
    }

    function uploadfile() {
    if (controllaestensione()) {
    //qui riporti il resto del codice per l'upload del file
    }
    }
    "Se in un primo momento l'idea non è assurda, allora non c'è nessuna speranza che si realizzi."

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    752
    Ho provato ma non funziona, il problema è prorpio quello
    probabilmente ci sono troppi return.
    E' possibile richiamare la function dell'upload solo se la function del nome è positiva facendo restare le 2 funcion separate non incasinando i return??
    Comunque Grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    752
    Risolto cosi:

    if(thisext == extension[i]) {Upload(nomeForm); return true }
    }
    Comunque Grazie

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 © 2024 vBulletin Solutions, Inc. All rights reserved.