Vérification champs formulaire avant envoi

Résolu
Tockay Messages postés 82 Date d'inscription   Statut Membre Dernière intervention   -  
Tockay Messages postés 82 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai un formulaire d'inscription et je voudrais vérifier mes champs avant l'envoi du formulaire afin de ne pas effacer les champs déjà rempli. J'ai vu qu'on pouvait utiliser le javascript.
Voila le code que j'ai et qui ne fonctionne pas :

(dans le head):

<SCRIPT LANGUAGE="JavaScript">
/* On crée une fonction de verification */
function verifForm()
{
if(form_inscription.inscription_mdp.value != form_inscription.inscription_mdp2.value ""){ /* on detecte si les mdp sont différents */
alert("Vous avez taper 2 mots de passe différents !"); /* dans ce cas on lance un message d'alerte */
}
else{
form_inscription.submit(); /* sinon on envoi le formulaire */
}
}
</SCRIPT>



(mon formulaire):

<form method="post" action="cible_inscription.php" id="form_inscription">
...
<input type="button" value="Inscription" onClick="verifForm(this.form)"/>
</form>


P.S : Ma page est en php

Merci d'avance.
A voir également:

10 réponses

dariumis Messages postés 571 Date d'inscription   Statut Membre Dernière intervention   63
 
Il vaut mieux faire les verification en php, car s'il le client a le javascript désactivé, la vérification ne ce fera pas.
0
Tockay Messages postés 82 Date d'inscription   Statut Membre Dernière intervention   6
 
Ok mais dans ce cas j'ai toujours le même problème car actuellement je fait la vérification sur ma page vers laquelle le formulaire pointe, j'affiche les erreurs et j'ai un bouton retour qui renvoi vers le formulaire mais vide...
J'ai penser à récupérer les variables entrées pour avec des champs hidden, les renvoyer avec le bouton retour et les mettre en value pour mes champs.
Mais je me demande si cette solution est propre? Et surtout si il n'y a pas plus simple?
0
dariumis Messages postés 571 Date d'inscription   Statut Membre Dernière intervention   63
 
Moi en général, quant il y a besoin d'alerte comme "champs vide"..., je fais pointer le formulaire sur sa propre page, du formulaire je fais partir un champ caché dans lequel il y a un boolean et je fais les verifications dans le "isset" de ce boolean. en même temps je recupere toutes les autre variables du formulaire que j'écris dans leurs champs du formulaire respectif. En faisant pointer le formulaire vers sa propre page ça évite beaucoup de traitement a faire suivre les variable pour les réécrire^^.
0
dariumis Messages postés 571 Date d'inscription   Statut Membre Dernière intervention   63
 
puis si tout est ok je fais un header(location:cible.php).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Tockay Messages postés 82 Date d'inscription   Statut Membre Dernière intervention   6
 
J'ai essayer en faisant pointer le formulaire vers sa propre page mais comme les vérifications des variables sont faites sur la même page, j'ai des alertes qui s'affichent à l'ouverture du formulaire alors que je n'ai pas encore cliqué une seule fois sur le bouton submit. Comment éviter ça?
0
dariumis Messages postés 571 Date d'inscription   Statut Membre Dernière intervention   63
 
oui c'est pourquoi il faut faire partir un boolean ou autre, d'un champs caché et faire les verifs dans dans le if(isset($_GET)){//traitement}

Comme ça il le fait uniquement si la variable a été posté.
0
Tockay Messages postés 82 Date d'inscription   Statut Membre Dernière intervention   6
 
Ok je vais essayer de creuser de ce côté là.
Merci pour ton aide !
0
Tockay Messages postés 82 Date d'inscription   Statut Membre Dernière intervention   6
 
J'ai réussi à tout faire marcher à l'exception d'une chose:
J'ai 2 checkbox et même en leur mettant un value="$_post['mavariable']", si la case a été cochée, elle se retrouve décochée après les messages d'erreur (alors que les champs text conservent leur contenu)
Et j'ai le même problème pour le champ de type select.
0
Tockay Messages postés 82 Date d'inscription   Statut Membre Dernière intervention   6
 
C'est bon, j'ai trouvé tout seul :)
0
sapma Messages postés 168 Date d'inscription   Statut Membre Dernière intervention   5
 
"afin de ne pas effacer les champs déjà rempli. "

ce n'est pas très clair.

function verifForm() vérifie si le mot de passe et sa confirmation sont identiques.

You Are Welcome.
-1
Tockay Messages postés 82 Date d'inscription   Statut Membre Dernière intervention   6
 
Pour être plus clair, je voudrais que si la personne à correctement rempli tous les champs mais a malencontreusement tapé 2 mots de passe différents, une alerte apparaisse pour le prévenir de son erreur et qu'il puisse la corriger sans que les champs remplis correctement soient remis à blanc.
0
sapma Messages postés 168 Date d'inscription   Statut Membre Dernière intervention   5
 
dans les <input type=text ... /> ajoute value='.$_POST['nom du champs'].'

exemple :
nom <input type=text name="nom" value='.$_POST['nom'].'
0
Tockay Messages postés 82 Date d'inscription   Statut Membre Dernière intervention   6
 
oui merci, dariumis m'a déjà suffisamment aidé.
Merci quand même ;)
0