Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Controllo form

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929

    Controllo form

    ciao a tutti,
    ho un form con 10 campi:

    cognome (obbligatorio)
    nome (obbligatorio)
    indirizzo
    citta
    provincia
    telefono
    fax
    mail (obbligatorio)
    oggetto
    messaggio

    e due radiobutton per la legge sulla privacy con SI e NO

    come posso controllare all'invio del form che i campi siano compilati correttamente e che il radiobutton sia su SI?

    vi mostro l'html

    codice:
    <form name="form" form style="margin:0;margin-top:23px" method="post" action="mail_success.php">
    <table width="401" border="0" align="center">
    <tr>
    <td colspan="2"><div align="left">Cognome</div></td>
    <td><input name="cognome" type="text" class="style-b" id="cognome" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    <span class="Stile2">*</span></td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Nome</div></td>
    <td><input name="nome" type="text" class="style-b" id="nome" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    <span class="Stile2">*</span></td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Indirizzo</div></td>
    <td><input name="indirizzo" type="text" class="style-b" id="indirizzo" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    </td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Citt&agrave;</div></td>
    <td><input name="citta" type="text" class="style-b" id="citta" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    </td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Provincia</div></td>
    <td><input name="provincia" type="text" class="style-b" id="provincia" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    </td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Telefono</div></td>
    <td><input name="telefono" type="text" class="style-b" id="telefono" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    </td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Fax</div></td>
    <td><input name="fax" type="text" class="style-b" id="fax" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    </td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">E-Mail</div></td>
    <td><input name="mail" type="text" class="style-b" id="mail" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    <span class="Stile2">*</span></td>
    </tr>
    <tr>
    <td colspan="3"><div align="left"></div></td>
    </tr>
    <tr>
    <td colspan="3">Soggetto:</td>
    </tr>
    <tr>
    <td colspan="3"><input name="oggetto" type="text" class="style-b" id="oggetto" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px"></td>
    </tr>
    <tr>
    <td colspan="3">Messaggio</td>
    </tr>
    <tr>
    <td colspan="3"><textarea name="messaggio" cols="" rows="" class="style-b" id="messaggio" style="width:271px;height:75px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px;overflow:auto;margin-bottom:17px;font-family:Arial"></textarea></td>
    </tr>
    <tr>
    <td colspan="3">CONSENTI IL TRATTAMENTO DEI DATI<input name="radiobutton" type="radio" value="SI" checked>
      SI
      <input name="radiobutton" type="radio" value="NO">NO(<span class="style-b">Leggi la normativa </span>) </td>
    </tr>
    <tr>
    <td colspan="3" class="style-b"></td>
    </tr>
    <tr>
    <td width="63"></td>
    <td colspan="2"><div align="right">
    <input type="image" src="../images/reset.jpg" align="absmiddle" width="33" height="11" border="0">
    <input type="image" src="../images/invia.jpg" align="absmiddle" width="33" height="11" border="0">
    </div></td>
    </tr>
    </table>
    
    
    </p>
    </form>
    Grazie mille

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    ok ho quasi risolto ho fatto un js esterno cosi

    codice:
    function ControllaForm () {
    //Messaggio di errore se i campi form sono vuoti
    if (document.form.cognome.value=="")
    {
    alert("Il cognome è richiesto");
    document.form.cognome.focus();
    return false;
    }
    else if (document.form.nome.value=="")
    {
    alert("Il nome è richiesto");
    document.form.nome.focus();
    return false;
    }
    else if (document.form.mail.value=="")
    {
    alert("Il campo mail è richiesto");
    document.form.mail.focus();
    return false;
    }
    else if (document.form.radiobutton.value == "NO")
    {
    alert("Attenzione, leggi l'informativa sultrattamento dei dati.");
    return false;
    }
    }
    solo due cose come posso fare un controllo mail decente, e poi perchè non tiene conto del radiobutton??


  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    ho fatto cosi ma seinserisco una mail corretta non funziona...

    codice:
    function ControllaForm () {
    var email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/; 
    //Messaggio di errore se i campi form sono vuoti
    if (document.form.cognome.value=="")
    {
    alert("Il cognome è richiesto");
    document.form.cognome.focus();
    return false;
    }
    else if (document.form.nome.value=="")
    {
    alert("Il nome è richiesto");
    document.form.nome.focus();
    return false;
    }
    else if (!email_reg_exp.test(document.form.mail) || (document.form.mail == "") || (document.form.mail == "undefined")) { 
    alert("Inserire un indirizzo e-mail corretto."); 
    document.form.mail.select(); 
    return false; 
    } 
    else if (document.form.radiobutton[1].checked)
    {
    alert("Attenzione, leggi l'informativa sultrattamento dei dati.");
    return false;
    }
    }

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Cosi funziona tutto (Spero):
    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Forum Contatti</title>
    <script language="javascript"> 
    function ValidateForm(){
    var f=document.form1;
    var Cognome = f.cognome.value;
    var Nome = f.nome.value;
    var Email = f.mail.value;
    var Privacy = f.radiobutton[1];
    if(Cognome == ""){
    alert("Il Cognome è obbligatorio");
    f.cognome.focus();
    return false;
    }
    if(Nome == ""){
    alert("Il Nome è obbligatorio");
    f.nome.focus();
    return false;
    }
    if(Email == ""){
    alert("Indirizzo mail è obbligatorio");
    f.mail.focus();
    return false;
    }
    if(!Email.match(/^[\A-Za-z0-9_\.-]+@[\A-Za-z0-9_\.-]+\.[a-z]{2,3}$/)){
    alert("Indirizzo mail errato");
    f.mail.focus();
    return false;
    }
    if(Privacy.checked){
    alert("DeVi accettare la legge sulla privacy");
    return false;
    }
    }
    </script>
    </head>
    <body>
    <form name="form1" form style="margin:0;margin-top:23px" method="post" action="mail_success.php" onSubmit="return ValidateForm();">
    <table width="401" border="0" align="center">
    <tr>
    <td colspan="2"><div align="left">Cognome</div></td>
    <td><input name="cognome" type="text" class="style-b" id="cognome" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    <span class="Stile2">*</span></td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Nome</div></td>
    <td><input name="nome" type="text" class="style-b" id="nome" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    <span class="Stile2">*</span></td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Indirizzo</div></td>
    <td><input name="indirizzo" type="text" class="style-b" id="indirizzo" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    </td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Città</div></td>
    <td><input name="citta" type="text" class="style-b" id="citta" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    </td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Provincia</div></td>
    <td><input name="provincia" type="text" class="style-b" id="provincia" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    </td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Telefono</div></td>
    <td><input name="telefono" type="text" class="style-b" id="telefono" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    </td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">Fax</div></td>
    <td><input name="fax" type="text" class="style-b" id="fax" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    </td>
    </tr>
    <tr>
    <td colspan="2"><div align="left">E-Mail</div></td>
    <td><input name="mail" type="text" class="style-b" id="mail" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px">
    <span class="Stile2">*</span></td>
    </tr>
    <tr>
    <td colspan="3"><div align="left"></div></td>
    </tr>
    <tr>
    <td colspan="3">Soggetto:</td>
    </tr>
    <tr>
    <td colspan="3"><input name="oggetto" type="text" class="style-b" id="oggetto" style="width:213px;height:16px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px"></td>
    </tr>
    <tr>
    <td colspan="3">Messaggio</td>
    </tr>
    <tr>
    <td colspan="3"><textarea name="messaggio" cols="" rows="" class="style-b" id="messaggio" style="width:271px;height:75px;font-size:11px;border-color:#D4D4D4;border-style:solid;border-width:1px;overflow:auto;margin-bottom:17px;font-family:Arial"></textarea></td>
    </tr>
    <tr>
      <td colspan="3">CONSENTI IL TRATTAMENTO DEI DATI
        <input name="radiobutton" type="radio" value="SI" checked>    
        SI
        <input name="radiobutton" type="radio" value="NO">NO(<span class="style-b">Leggi la normativa </span> ) </td></tr>
    <tr>
    <td colspan="3" class="style-b"> </td>
    </tr>
    <tr>
    <td width="63"> </td>
    <td colspan="2"><div align="right">
      <input type="reset" name="Submit" value="Submit">
      <input type="submit" name="Submit" value="Submit">
    </div></td>
    </tr>
    </table>
    
    
     </p>
    </form>
    </body>
    </html>
    Se al posto dei pulsanti vuoi utilizzare le immagini fai cosi:
    codice:
    
      [img]Percorso/Tua_Immagine_Reset.gif[/img]
      <input name="imageField" type="image" src="tuopercoso/Tua_Immagine_Invio.jpg" width="26" height="24" border="0">

    PS la parola "javascript" la spezza il forum html ma deve essere unita.


    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    Grazie mille è perfetto!!!


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.