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>
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
-
Tu utilises php/mysql pour stocker les données ?
-
-
@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
-
-
Ben, tu dois vérifier si les variables sont vide ou pas...
-
kel variables?
-
ben, celle des champs obligateurs.... si elles sont null ben, tu renvoies à la page de formulaire
-
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;
}