Champ obligatoire dans formulaire html

Bonjour,

jai un probleme avec mon formulaire sur mon site.
je voudrais que mes champs soit obligatoires.
est ce que kelkun peut maider?

voici un bout de mon code

<a href="for-ent.htm" class="heb">Formation</a><font class="font16"> ></font>
<font class="font16">Votre projet</font></div>
<font class="font6"> <br>VOTRE PROJET</font><br>
<img border="0" src="../tech/img/000000.gif" width="100%" height="1"></td>
</tr>
<tr>
<td class="td1"><div align="justify">
<font class="font"><img border="0" src="../tech/img/vid.gif" width="1" height="15"><br>
Vous avez un projet de formation :<br>
<br>
<div align="center">
<form name="frmFormation" action="for_form.asp" method="post" onsubmit="return validFor(txtNom, txtPrenom, txtSociete, txtEmail, txtActivite)">
<table border="0" cellspacing="0" cellpadding="0" WIDTH="1" STYLE="border-collapse: collapse">
<tr><td class="td" colspan="2"><font class="font"><b>Vous :</b></font><br>
<img border="0" src="../tech/img/vid.gif" width="1" height="2"><br><img border="0" src="../tech/img/C70000.gif" width="100%" height="1"><br><img border="0" src="../tech/img/vid.gif" width="1" height="5"></td></tr>
<td class="td3"> <font class="font"><strong>Nom *  </strong></font></td>
<td class="td"><input type="text" name="txtNom" class="champ7" size="20" /></td>
</tr>
<tr>
<td class="td3"> <font class="font"><strong>Prénom *  
</strong></font></td>
<td class="td"><input type="text" name="txtPrenom" class="champ7" size="20" /></td>
</tr>
<tr>
<td class="td3"> <font class="font"><strong>Société
*  </strong></font></td>
<td class="td"><input type="text" name="txtSociete" class="champ7" size="20" /></td>
</tr>
<tr>
<td class="td3"> <font class="font"><strong>E-mail
*  </strong></font></td>
<td class="td"><input type="text" name="txtEmail" class="champ7" size="20" /></td>
</tr>
<tr><td class="td3"> <font class="font">Tél.</font></td>
<td class="td"><input type="text" name="txtTel" class="champ7" size="20"></td></tr>
<tr><td class="td3"> <font class="font">Fax</font></td>
<td class="td"><input type="text" name="txtFax" class="champ7" size="20"></td></tr>
<tr><td class="td3"> <font class="font">Adresse</font></td>
<td class="td"><textarea name="txtAdresse" class="champ8" rows="1" cols="20"></textarea></td></tr>
<tr>
<td class="td3"> <font class="font"><strong>Activité
*   </strong></font></td>
<td class="td"><input type="text" name="txtActivite" class="champ7" size="20" /></td>
</tr>
<tr>
<tr><td class="td" colspan="2"> <br><font class="font"><b>Votre projet :</b></font><br>
<img border="0" src="../tech/img/vid.gif" width="1" height="2"><br><img border="0" src="../tech/img/C70000.gif" width="100%" height="1"><br><img border="0" src="../tech/img/vid.gif" width="1" height="5"></td></tr>
<tr><td class="td3" nowrap> <font class="font">Nombre de personnes</font></td>
<td class="td"><input type="text" name="txtNbpers" class="champ7" size="20"></td></tr>
<tr><td class="td3" nowrap> <font class="font">Public cible</font></td>
<td class="td"><input type="text" name="txtPublic" class="champ7" size="20"></td></tr>
<tr><td class="td3" nowrap> <font class="font">Niveau</font></td>
<td class="td"><input type="text" name="txtNiveau" class="champ7" size="20"></td></tr>
<tr><td class="td3" nowrap> <font class="font">Objectifs de la formation</font></td>
<td class="td"><textarea name="txtObjectif" class="champ8" rows="1" cols="20"></textarea></td></tr>
<tr><td class="td3" nowrap> <font class="font">Thème de la formation</font></td>
<td class="td"><input type="text" name="txtThemeFor" class="champ7" size="20"></td></tr>
<tr><td class="td3" nowrap> <font class="font">Commentaires / informations utiles</font></td>
<td class="td"><textarea name="txtCommentaire" class="champ8" rows="1" cols="20"></textarea></td></tr>
<tr><td class="td2" colspan="2"> <br><input type="submit" value="Envoyer" name="B1" class="submit"></td></tr>
</table>
</form>
</div>
<p> 
</font>
</td>
</tr>
</table>
Configuration: Windows XP
Firefox 3.0.4

5 réponses

  • Votes
  • Date
  • Date décroissante
  1. Tu utilises php/mysql pour stocker les données ?
    1. oui exactement pourkoi?
    2. @princekillerBonjour,

      déja une erreur dans l'appel de la fct javascript

      il faut mettre les valeurs passées en argument entre '

      <form name="frmFormation" action="for_form.asp" method="post" onsubmit="return validFor('txtNom', 'txtPrenom', 'txtSociete', 'txtEmail', 'txtActivite');">


      ensuite il te faut une fonction javascript validFor

      qui vient lire les champs passés en argument

      function validFor(champ1,champ2,champ3,champ4,champ5){
       if(frmFormation.champ1.value==""){
      alert("Le champ Nom doit être rempli !");
      return false;
      }
       if(frmFormation.champ2.value==""){
      alert("Le champ Prenom doit être rempli !");
      return false;
      }  
      
      // etc...
      
      //donc si aucun champ trouvé vide
      return true
      }
      


      si la fonction return false le formulaire ne sera pas soumis, si true il partira

      et tu peux completer en faisant une vérification des champs dans le fichier for_form.asp , deux précautions valent mieux qu'une
  2. ben, celle des champs obligateurs.... si elles sont null ben, tu renvoies à la page de formulaire
    1. ben jai deja un fichier ki le fait mais ca ne marche pas

      voici le code
      function validFor(txtNom, txtPrenom, txtSociete, txtEmail, txtVille, txtCodePostal, txtActivite)
      {
      var txtErreur;
      txtErreur = "";
      if (!validationChampVide(txtNom))
      txtErreur = ". Nom \n";

      if (!validationChampVide(txtPrenom))
      txtErreur = txtErreur + ". Prénom \n";

      if (!validationChampVide(txtSociete))
      txtErreur = txtErreur + ". Société \n";

      if (!validationEmail(txtEmail))
      txtErreur = txtErreur + ". Email \n";

      if (!validationChampVide(txtVille))
      txtErreur = txtErreur + ". Ville \n";

      if (!validationChampVide(txtCodePostal))
      txtErreur = txtErreur + ". Code postal \n";

      if (!validationChampVide(txtActivite))
      txtErreur = txtErreur + ". Activité \n";

      if (txtErreur != "") {
      txtErreur = "Erreur, Veuillez remplir correctement le(s) champ(s) obligatoire(s) suivant : \n" + txtErreur;
      alert(txtErreur);
      return false;
      }
      return true;
      }

      //#### Fonctions generiques ####//

      //fonction generique pour verifier si le champ d'un formulaire est vide
      function validationChampVide(textObj)
      {
      if(textObj.value == ""){
      return false;
      }
      return true;
      }

      //fonction generique pour verifier si une selection à été réalisée dans un select
      //sachant que 0 veut dire non-sélectionné
      function validationSelect(textObj)
      {
      if(textObj.value == "0"){
      return false;
      }
      return true;
      }

      //fonction generique pour verifier si une adresse email est dans un bon format
      function validationEmail(textObj)
      {
      var str = textObj.value
      var atsign = str.indexOf('@') // get position of @ sign in string
      var dot = str.lastIndexOf('.')

      if ((atsign < 1) || // '@' cannot be in first position
      (dot <= atsign + 1) || // Must be at least one valid char btwn '@' and '.'
      (str.charAt(dot - 1) == '.') || // Two dots can not appear in consecutive positions
      (dot == (str.length - 1)) || // Must be at least one valid char after '.'
      (str.indexOf(' ') != -1) || // No empty spaces permitted
      (str.indexOf(',') != -1) || // No commas permitted
      (str.indexOf('"') != -1) || // No double quotes permitted
      (str.indexOf('\'') != -1)) // No single quotes permitted
      {
      return false;
      }
      return true;
      }