Visualizzazione dei risultati da 1 a 4 su 4

Discussione: validazione form

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    513

    validazione form

    Ciao a tutti. So che è un problema stupido e già stato trattato e ritrattato...ed infatti è un'ora che cerco nel forum, ma non ne vengo fuori. Dovrei controllare che alcuni campi di un form sian stati compilati, che la mail abbia una giusta sintassi, e che la checkbox con l'informativa sulla privacy sia spuntata...finora ho trovato diversi script, ma nessuno che faccia tutte e tre le cose...e provando ad adattarli ho combinato esclusivamente disastri. Il mio form è questo:

    codice:
    <form class="cont" action="invio.php" method="post">
                               <fieldset>
                                         <legend>Dati personali</legend>
                                         
    
    <span>NOME *:</span> <input type="text" class="text" name="nome" /></p>
                                         
    
    <span>COGNOME *:</span> <input type="text" class="text" name="cognome" /></p>
                                         
    
    <span>CITT&Agrave;:</span> <input type="text" class="text" name="citta" /></p>
                                         
    
    <span>CAP:</span> <input type="text" class="text" name="cap" /></p>
                                         
    
    <span>VIA:</span> <input type="text" class="text" name="via" /></p>
                                         
    
    <span>TELEFONO *:</span> <input type="text" class="text" name="tel" /></p>
                                         
    
    <span>E-MAIL *:</span> <input type="text" class="text" name="email" /></p>
                               </fieldset>
                               <fieldset>
                                         <legend>RICHIESTA *</legend>
                                         <textarea class="textarea" name="messaggio" cols="55" rows="15"></textarea>
                               </fieldset>
                               <fieldset>
                                         <legend>Privacy</legend>
                                         
    
    Acconsento il trattamento dei dati ai sensi del D.Lgs.196/2003 <input name="accetto" type="checkbox" checked="checked" /></p>
    
                                         <input class="azioni" type="submit" value="invia" />
                                         <input class="azioni" type="reset" value="Cancella" />
                               </fieldset>
                         </form>
    Grazie mille a chi vorrà aiutarmi!

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    513
    In pratica, riesco ad usare questo script per controllare che i campi siano compilati e la e-mail corretta:
    codice:
    <script type="text/javascript">
    function validate_required(field,alerttxt)
    {
    with (field)
    {
    if (value==null||value=="")
      {alert(alerttxt);return false}
    else {return true}
    }
    }
    
    function validate_email(field,alerttxt)
    {
    with (field)
    {
    apos=value.indexOf("@")
    dotpos=value.lastIndexOf(".")
    if (apos<1||dotpos-apos<2) 
      {alert(alerttxt);return false}
    else {return true}
    }
    }
    
    function validate_form(thisform)
    {
    with (thisform)
    {
    if (validate_required(nome,"Nome must be filled out!")==false)
      {email.focus();return false}
    if (validate_required(cognome,"Cognome must be filled out!")==false)
      {email.focus();return false}
    if (validate_required(tel,"Numero telefonico must be filled out!")==false)
      {email.focus();return false}
    if (validate_required(email,"Email must be filled out!")==false)
      {email.focus();return false}
    if (validate_email(email,"Not a valid e-mail address!")==false)
      {email.focus();return false}
    }
    }
    </script>
    Ma non riesco ad integrare in esso quest'altro che controlla se la checkbox con l'informativa sulla privacy sia stata spuntata

    codice:
    function convalida(f){
    if(!f.accetto.checked){
    alert('accettare la normativa prima di procedere!');
    return false;
    }
    return true;
    }

  3. #3
    Ci provo...

    function validate_form(thisform)
    {
    with (thisform)
    {
    if (validate_required(nome,"Nome must be filled out!")==false)
    {email.focus();return false}
    if (validate_required(cognome,"Cognome must be filled out!")==false)
    {email.focus();return false}
    if (validate_required(tel,"Numero telefonico must be filled out!")==false)
    {email.focus();return false}
    if (validate_required(email,"Email must be filled out!")==false)
    {email.focus();return false}
    if (validate_email(email,"Not a valid e-mail address!")==false)
    {email.focus();return false}
    if(!thisforma.getElementsByName("accetto").cheked)
    {alert('accettare la normativa prima di procedere!');
    return false;
    }
    }
    }

    Che ne dici?? dovrebbe andare no?

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    513
    Mi spiace ma non va...però son riuscito a risolvere. il codice completo ora è questo...dovrebbe andar bene no?

    codice:
    <script type="text/javascript">
    function validate_required(field,alerttxt)
    {
    with (field)
    {
    if (value==null||value=="")
      {alert(alerttxt);return false}
    else {return true}
    }
    }
    
    function validate_email(field,alerttxt)
    {
    with (field)
    {
    apos=value.indexOf("@")
    dotpos=value.lastIndexOf(".")
    if (apos<1||dotpos-apos<2) 
      {alert(alerttxt);return false}
    else {return true}
    }
    }
    
    function validate_check(field,alerttxt)
    {
    if (!field.checked)
      {alert(alerttxt);return false}
    else {return true}
    }
    
    function validate_form(thisform)
    {
    with (thisform)
    {
    if (validate_required(nome,"Nome must be filled out!")==false)
      {nome.focus();return false}
    if (validate_required(cognome,"Cognome must be filled out!")==false)
      {cognome.focus();return false}
    if (validate_required(tel,"Numero telefonico must be filled out!")==false)
      {tel.focus();return false}
    if (validate_required(email,"Email must be filled out!")==false)
      {email.focus();return false}
    if (validate_email(email,"Not a valid e-mail address!")==false)
      {email.focus();return false}
    if (validate_check(accetto,"accetta!")==false)
      {email.focus();return false}
    }
    }
    </script>
    Grazie lo stesso!

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