Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012

    controllo estensione file in form di upload

    cioa a tutti, come da titolo ho questo problema:

    ho un form in cui l' utente ha la possibilità di fare un upload di immagini e documenti in formato pdf.

    il problema nasce dal fatto che vorrei verificare tramite jscript l' estensione del file e mandare un alert in caso di fallimento.
    Nel form i campi sono name=immagini[] e il form name="modulo"

    ecco il codice java da cui sono partito e che non funziona...
    codice:
    <script>
    function estensioni()
    {
    with(document.modulo) 
    {
    var pattern=/^.+\.(jpg|jpeg)/;
    for (i=0;i<immagini[source].lenght;i++)
      {
      var stringa=document.modulo.immagini[source][i];
      if ( !pattern.test(stringa) )
        { 
        alert("I file accettati sono jpg o jpeg");
    	  immagini[source][i].focus();
    	  return false;
        }
      }
    }
    }
    </script>
    e questo il form :
    codice:
    <form method="POST" name="modulo" enctype="multipart/form-data" action="insert.php" onSubmit="return estensioni();">
    <tr>
    			<td align="center" width="100%" colspan="2">
    			<input type="file" name="immagini[]" size="61"></td>
    		</tr>
    		<tr>
    			<td align="center" width="100%" colspan="2">
    			<input type="file" name="immagini[]" size="61"></td>
    		</tr>
    		<tr>
    			<td align="center" width="100%" colspan="2">
    			<input type="file" name="immagini[]" size="61"></td>
    		</tr>
    	<p align="center"><input type="submit" value="invia i dati" name="invia"></p>
    grazie a tutti quelli che mi aiutano
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  2. #2
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    up
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  3. #3
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    uppete

    perfavore è una cosa così difficile trattare un array in java script??
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  4. #4
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    ri-uppete
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  5. #5
    Tirato via ma visto che hai furia
    Codice PHP:
    <script language="JavaScript" type="text/JavaScript">
    function 
    validExt(url){
            var 
    exturl.split('.');
            return /(
    jpg|jpeg)/.test(ext[ext.length-1]);
    }
    function 
    estensioni(){
        var 
    frmdocument.getElementsByTagName('form')[0];
        if(!
    validExt(frm.elements[0].value)){
            
    alert('I file accettati sono jpg o jpeg');
            
    frm.elements[0].focus();
            return 
    false;
        }
        if(!
    validExt(frm.elements[1].value)){
            
    alert('I file accettati sono jpg o jpeg');
            
    frm.elements[1].focus();
            return 
    false;
        }
        if(!
    validExt(frm.elements[2].value)){
            
    alert('I file accettati sono jpg o jpeg');
            
    frm.elements[2].focus();
            return 
    false;
        }
        return 
    true;
    }
    </script> 

    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  6. #6
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    grassie whish

    ho il fiato sul collo dal capo progetto... capisc' a me!
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  7. #7
    dai il lavoro di controllo al tuo file insert.php che fai prima....

    e se il caso cancelli il file non desiderato ....


    su server linux in php
    basterebbe solo

    if (file_exists($src)) {
    $m = `file -b $src`;
    return $m;
    } else {
    return "text/unknow";
    }

    window invece offre poco da quel lato....


    Codice PHP:
    /* return mime */
    public static function Get($src) {
            
    $extension substr($src,strrpos($src,".")+1);
            
            switch (
    $extension) {
                case 
    "rtf";
                return 
    "text/rtf";
                case 
    "sxw":
                case 
    "odt":
                case 
    "ods":
                case 
    "sxc":
                return 
    "application/vnd.sun.xml.writer";
                case 
    "pdf":
                return 
    "application/pdf";
                case 
    "gif":
                return 
    "image/gif";
                case 
    "jpg":
                case 
    "jpeg":
                return 
    "image/jpeg";
                case 
    "png":
                return 
    "image/png";
                case 
    "css":
                return 
    "text/css";
                case 
    "xml":
                case 
    "xsl":
                case 
    "xsd":
                case 
    "rng":
                case 
    "eps":
                case 
    "ps":
                case 
    "zip":
                case 
    "sit":
                case 
    "gz":
                case 
    "tar":
                case 
    "mp3":
                return 
    "text/xml";
                case 
    "js":
                return 
    "text/javascript";
                case 
    "html":
                case 
    "htm":
                case 
    "xhtml":
                return 
    "text/html";
                case 
    "txt":
                return 
    "text/plain";
                
                default:
                if (
    file_exists($src)) {
                    
    $m =  `file -b $src`;
                    return 
    $m;
                } else {
                    return 
    "text/unknow";
                }
            }
            
            
        } 
    I search one translator Italian/[2]/Englisch for my QT4 Projekt:
    http://sourceforge.net/projects/qt-webdav/
    http://sourceforge.net/projects/visual-xsltproc/
    http://sourceforge.net/projects/qtexcel-xslt/

  8. #8
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    ciao, si la tua potrebbe essere una soluzione, ma non per il mio caso.

    Se faccio come dici te il form viene inviato, avviene il controllo e in caso di errore torna al client l'output che decido io.

    ho voluto utilizzare java perchè è piu immediato.. "user-friendly" per cosi dire.

    il controllo avviene SI alla pressione del tasto invio, ma la pagina rimane li anzichè essere inviata e ritornata.

    Il mio problem era l'immediatezza del controllo

    grazie comunque per l'interessamento

    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  9. #9
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    Originariamente inviato da whisher
    Tirato via ma visto che hai furia
    Codice PHP:
    <script language="JavaScript" type="text/JavaScript">
    function 
    validExt(url){
            var 
    exturl.split('.');
            return /(
    jpg|jpeg)/.test(ext[ext.length-1]);
    }
    function 
    estensioni(){
        var 
    frmdocument.getElementsByTagName('form')[0];
        if(!
    validExt(frm.elements[0].value)){
            
    alert('I file accettati sono jpg o jpeg');
            
    frm.elements[0].focus();
            return 
    false;
        }
        if(!
    validExt(frm.elements[1].value)){
            
    alert('I file accettati sono jpg o jpeg');
            
    frm.elements[1].focus();
            return 
    false;
        }
        if(!
    validExt(frm.elements[2].value)){
            
    alert('I file accettati sono jpg o jpeg');
            
    frm.elements[2].focus();
            return 
    false;
        }
        return 
    true;
    }
    </script> 

    l'ignoranza non ha confini ...

    mi puoi fare un esempio su come implementarlo a livello di html il tuo codice swish per favore?

    non riesco a farlo funzionare....

    grazie
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  10. #10
    vedo ... ma almeno

    var DOM = (document.getElementById) ? 1 : 0;

    if (DOM != 1) {
    alert("Il tuo browser non capisce il dom!"):
    }
    I search one translator Italian/[2]/Englisch for my QT4 Projekt:
    http://sourceforge.net/projects/qt-webdav/
    http://sourceforge.net/projects/visual-xsltproc/
    http://sourceforge.net/projects/qtexcel-xslt/

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.