Validation de Formulaire en Javascript

Résolu/Fermé
mb12fr Messages postés 74 Date d'inscription jeudi 8 février 2001 Statut Membre Dernière intervention 22 septembre 2003 - 13 sept. 2001 à 11:57
gosse23 Messages postés 4 Date d'inscription jeudi 18 décembre 2008 Statut Membre Dernière intervention 22 août 2013 - 7 mai 2012 à 21:08
Salut,

comment faire pour valider un formulaire avec le bouton submit.

Avec OnClick=controle() je controle les données du formulaire, mais comment faire en cas de succes pour aller à la page concernée par le POST, et en cas d'échec de rester sur ma page sans perdre les données saisies ?

Merci

11 réponses

Bobinours Messages postés 2898 Date d'inscription jeudi 26 avril 2001 Statut Membre Dernière intervention 21 mars 2013 504
13 sept. 2001 à 14:18
La meilleure methode selon moi:

<form ... onSubmit="return controle()">
...
<input type="submit" ...>

<script>
function controle()
{
if (OK) {return true;}
else {return false;}
}
</script>

-= Bobinours =-
18
crapoulou Messages postés 28158 Date d'inscription mercredi 28 novembre 2007 Statut Modérateur, Contributeur sécurité Dernière intervention 16 avril 2024 7 990
2 sept. 2009 à 21:20
Salut arkus340,
Poste ton problème dans un nouveau topic sur le forum stp.
Merci.
5
Dans ta fonction contrôle, tu fais un test j'imagines...

Si le test est OK, tu fais un window.location="nouvelleurl" pour te rediriger, sinon, tu ne fais rien...(ou alors tu affiche une boîte de dialogue pour dire quels champs sont incorrects...)

jibé
4
Bobinours Messages postés 2898 Date d'inscription jeudi 26 avril 2001 Statut Membre Dernière intervention 21 mars 2013 504
14 sept. 2001 à 06:20
jibé : S'il fait une redirection, il perd ses paramètres... Ta solution n'est pas viable (à moins de passer les paramètre en JavaScript (en methode GET) !!!

-= Bobinours =-
0
jibé > Bobinours Messages postés 2898 Date d'inscription jeudi 26 avril 2001 Statut Membre Dernière intervention 21 mars 2013
14 sept. 2001 à 12:00
Ses paramètres, ils peut les passer dans l'URL non ?
0
mb12fr Messages postés 74 Date d'inscription jeudi 8 février 2001 Statut Membre Dernière intervention 22 septembre 2003 5
14 sept. 2001 à 13:05
Merci à tous . Voici ce que je fis:

Une fonction script :

function Verif()
{
if (OK){
return true;
}
else
{
alert("Pas bon !");
return false;
}


et la déclaration de ma forme:

<form name=form1 action="suivi.php" method=post>
<input type=button value=Valider onClick="if (Verif()) document.form1.submit()">
</form>

Vive le forum :-)


0
Bobinours Messages postés 2898 Date d'inscription jeudi 26 avril 2001 Statut Membre Dernière intervention 21 mars 2013 504 > mb12fr Messages postés 74 Date d'inscription jeudi 8 février 2001 Statut Membre Dernière intervention 22 septembre 2003
17 sept. 2001 à 17:00
Je te conseille de faire le submit dans la fonction verif()

function Verif()
{
if (OK){
document.form1.submit()
}
else
{
alert("Pas bon !");
}

et la déclaration de ma forme:

<form name=form1 action="suivi.php" method=post>
<input type=button value=Valider onClick="Verif()">
</form>

Sinon, avec ta solution, on ne peut pas utiliser le bouton ENTREE pour submiter le formulaire, ce qui est souvent très pratique pour ceux qui maitrise le Web...

-= Bobinours =-
0
Une autre méthode qui marche, en utilisant un bouton button

<form action=... method=post>
.
.
.
<input type=button onclick="if(confirm('Etes vous sur?')) document.forms[0].submit()">
</form>

Ici il y aura une boite de dialogee confirm:
si tu clique ok le formulaire execute l'action si tu clique annuler, tu reste su la meme page.
2

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

Posez votre question
gosse23 Messages postés 4 Date d'inscription jeudi 18 décembre 2008 Statut Membre Dernière intervention 22 août 2013 2
7 mai 2012 à 21:08
merci
2
Salut,
Je suis a peut pret dans le meme cas, je cherche à controler si une personne veut belle et bien supprimer du contenu.
mon formulaire permet donc soit de modifier soit de supprimer le contenu affiché. mon code est donc à la fin du form:

<input class="bouton" type="submit" value="Modify" name="Modify" />
<input class="bouton" type="button" value="Delete" name="Delete" onclick="if(confirm('Are you sure? The content would be delete of the data base!')) this.form.submit();"/>

j'ai bien vu plus au dans le forum que cela perdait les variables donc marche pas... Pouvez vous me dire comment contourner le probleme...
1
C'est assez simple.

Au lieu de :

<input class="bouton" type="button" value="Delete" name="Delete" onclick="if(confirm('Are you sure? The content would be delete of the data base!')) this.form.submit();"/>

Marque:

<input class="bouton" type="submit" value="Delete" name="Delete" onclick="if (window.confirm('Are you sure? The content would be delete of the data base!'))
1
salut; g mresque le meme probleme de verification de formulauire sauf que la validation se fait correctement mais le submit est fonctionnel dans les deux cas, or je veux que si ce n'est pa validé je ne passe pas à la pages suivante

voila mon code:

<script type="text/javascript">


function valider() {

if((document.form_repondre.tit_mesg.value != "") && (document.form_repondre.pseudo.value != "")) {

document.form_repondre.submit();
}
else {

alert("tt les chapms");


}
}


</script>

et l'appel:

<form onsubmit="valider(this)"..................>
0
arkus340 Messages postés 1 Date d'inscription vendredi 21 août 2009 Statut Membre Dernière intervention 21 août 2009
21 août 2009 à 13:37
Bonjour,
je voudrai faire un formulaire qui active un lien apres le post de celuici

php ou javascript?
et comment?

y a t'il déjà des script tout prêt qu'il y a juste qu'a personnaliser?

merci
0
Le plus simple (mais c'est moins dynamique) c'est de traiter ton formulaire en php

une fois le formulaire traité tu fais une redirection:


if ($control=="ok"){header('Location: tonlien.php');} 


tu trouveras sur le net des exemples de formulaires et de traitement en php. Il surement falloir que tu te plonges un peu le nez dans le php par contre.

<form action="" method="POST"> // pas d'action puisque tu traite sur la même page 
<input type="text" name="nom" value="Ici votre nom"> 
<input type="submit" value="C'est parti!"> 
</form> 

if   (isset($_POST['nom'])  
    {$nom = $_POST['nom'];} // là tu récupère et tu en fait ce que tu veux 
//si tu veux en faire quelque chose après le nez dans le Sql! ;) 


Tu peux aussi histoire de faire ceci:
if (!isset($_POST['nom']) 
{ 
// ton form 
} 
elseif (isset($_POST['nom']){echo "C'est reparti";} 


En éspérant t'avoir avancer un peu. bon courage à toi
0
Bonjour, voici un formulaire du même type qui marche:

Les points importants selon moi sont:
1) à la fin du formulaire, bien mettre un input type="button" car si vous mettez input type="submit" le formulaire est soumis quoi qu'il arrive
2) bien mettre document.coordonee.submit(); dans le javascript, cela vous assure que si votre vérification est ok le formulaire est soumis
3) mettre une action="acompte.php" si vous voulez que ca enchaine sur une page après votre formulaire ;)


<form name="coordonee" action="acompte.php" method="post">
<label for="nom" class="ui-hidden-accessible">Nom:</label>
<input type="text" name="nom" id="nom" value="" placeholder="Nom"/>
<label for="prenom" class="ui-hidden-accessible">Prénom:</label>
<input type="text" name="prenom" id="prenom" value="" placeholder="Prénom"/>
<label for="email" class="ui-hidden-accessible">Email:</label>
<input type="email" name="email" id="email" value="" placeholder="Email"/>
<label for="mobile" class="ui-hidden-accessible">Tel. mobile:</label>
<input type="tel" name="mobile" id="mobile" value="" placeholder="Tel. mobile"/>
<input type="button" value="Valider" data-theme="b" onClick="verif()"/>
</form>

<script language="javascript">
function verif()
{
var nom = document.coordonee.nom.value;
if (nom == "")
{
alert ("Veuillez saisir votre nom");
document.coordonee.nom.focus();
return false;
}
else
{
document.coordonee.submit();
return true;
}
}

</script>

A bientôt!
0