Contrôle formulaire avec javascript

Fermé
zikomilan - 23 juil. 2008 à 10:18
macgawel Messages postés 664 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 1 novembre 2008 - 23 juil. 2008 à 11:19
Bonjour,
Je vais savoir comment faire un contrôle sur les champs saisis dans un formulaire
voici mon code

<html>

<head>
<title>Sans Titre</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<meta name="generator" content="HAPedit 3.1">
<script language="javascript">
function add(form){
alert ('L'enregistrement est reussi');
}
function verifier(form)
{
var t=document.form.libelle.value;
var t1=document.form.code.value;
var t2=document.form.tel.value;
var t3=document.form.credit.value;
var i;
for(i=0;i<t.length;i++)
{
var ch=t.charAt(i);
if((ch>="0" && ch<="9") || ch=="")
alert('Votre nom incorrect');
}
for(i=0;i<t1.length;i++)
{
var ch=t1.charAt(i);
if((ch>="a" && ch<="z")||(ch>="A" && ch<="Z") || ch=="")
alert('Votre code incorrect');
}
for(i=0;i<t2.length;i++)
{
var ch=t2.charAt(i);
if((ch>="a" && ch<="z")||(ch>="A" && ch<="Z") || ch=="")
alert('Votre num telephone incorrect');
}
for(i=0;i<t3.length;i++)
{
var ch=t3.charAt(i);
if((ch>="a" && ch<="z")||(ch>="A" && ch<="Z") || ch=="")
alert('Votre credit incorrect');
}
</script>
</head>
<body bgcolor="#FFFFFF" background="images/ommp3.bmp">
<center><h1>Ajout d'un Client</h1>
<form action="add_client.php" name="form" method="post">
<table border="2">
<tr><td>Code </td><td> <input type="text" name="code" size="20" onBlur="verifier(form)"/></td></tr>
<tr><td>Libelle </td><td> <input type="text" name="libelle" size="20" onBlur="verifier(form)"/></td></tr>
<tr><td>Tel </td><td> <input type="text" name="tel" size="20" onBlur="verifier(form)"/></td></tr>
<tr><td>Credit </td><td> <input type="text" name="credit" size="20" onBlur="verifier(form)"/></td></tr>
<tr><td><input type="submit" name="VALIDER" value="VALIDER" onClick="add()"/></td><td><input type="reset" name="ANNULER" value="ANNULER" /></td></tr>
</table>
</form>

</body>

</html>

1 réponse

macgawel Messages postés 664 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 1 novembre 2008 89
23 juil. 2008 à 11:19
Bonjour.

1. Une vérification par JS, c'est peu fiable : une personne malveillante peut le désactiver ou le modifier.
=> Il faut refaire les vérifications du côté serveur...

2. Je te déconseille d'utiliser le onBlur pour demander la vérification : si quelqu'un qui est en train de remplir ton formulaire clique ailleurs il y aura un message pour rien (du coup, tu peux être sûr que des gens le feront :-S )

3. Tu exécute toujours la même fonction, avec le même paramètre.
Ca veut dire que quand tu quittes le premier champ, tu vérifies que tous<//ital> les champs sont remplis correctement ?!

4. Ta méthode de test est foireuse : si je remplis les champs avec des é ou des ; ils seront considérés comme corrects...

Pour tester que la chaîne machaine est bien un nombre :
if (parseInt(machaine) == machaine) {
	alert(machaine+' est un nombre');
}

Pour le libellé, je ne vois pas pourquoi tu interdis les chiffres. Si tu veux <ital>vraiment
les interdire, il vaut peut-être mieux passer par les expressions régulières.
Et pour le n° de téléphone, fais attention : la plupart des gens mettent des séparateurs (01-02-03-04-05, par exemple)
0