Version complète: sur le forum Webmaster Hub : Un script à corriger !
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
RookieCed
voilà, j'ai ceci, qui vérifie la présence de l'entrée "nom" :


CODE
<script type="text/javascript">
function valider(){

 if(document.formulaire.nom.value != "") {
  return true;
 }
 else {
      alert("Saisissez le prénom");
       return false;
 }
}
</script>



que je voudrais adapter de la manière suivante pour vérifier aussi les autres valeurs de mon formulaire (prenom, etc...) :


quand la première vérification est OK, passer à la suivante.

En gros, je n'ai les connaissances nécessaires en javascript pour remplacer le "return true" et un terme qui voudrait dire "passer à la vérification suivante"....

Please Help biggrin.gif
Vincent
je ferais plutot l'inverse pour la vérification :
a chaque vérification , si j'ai une erreur, je retourne 'false'
si j'arrive au bout de ma fonction sans erreur, je retourne 'true'

ca se presentera de la manière suivante :
CODE
if(macondition1 = false)
return false
if(macondition2 = false)
return false
if(macondition3 = false)
return false
if(macondition4 = false)
return false
if(macondition5 = false)
return false

return true
Dan
Salut RookieCed,

Tu trouveras un script tout fait à cette page: http://www.webmaster-hub.com/index.php?sho...indpost&p=68950

Dan
RookieCed
Un grand merci, je vais prendre un peu de temps pour essayer tout ça !!!!

et merci pour les réponses rapides !!!!! wink.gif

je vous tiens au courant....

[>Ced<]
Dan
Ce script a le mérite de tourner sans problème depuis plus de 2 ans... sur mon site de démo qui fait environ 20 à 30 000 visiteurs/mois.

Il est donc "supposé correct" wink.gif
RookieCed
ouais, mais j'ai un problème (sur ma page, comme sur ton site).... au clic, rien ne se passe.... ni alerte, ni envoi du formulaire...

est-il compatible avec Mozilla Firefox ?????

(mon javascript est bien activé...)

bizarre, non ???

[>Ced<]
RookieCed
Voilà le nouveau problème :


CODE
<HEAD>

<script LANGUAGE="JavaScript">

function verifForm(commande)
{
if(commande.nom.value == "")
alert('Il nous faut obligatoirement ton nom !!!');

if(commande.prenom.value == "")
alert('Il nous faut obligatoirement ton prénom !!!');

if(commande.email.value == "")
alert('Il nous faut obligatoirement ton adresse mail pour pouvoir t'envoyer la confirmation de ta commande !!!');

else
formulaire.submit();
}
</SCRIPT>

</HEAD>





<BODY>

<FORM ACTION="email.php" METHOD="POST" NAME="commande">

(je définis mon formulaire avec mes entrées....)

<input type="submit" name="validation" value="Valider ma Commande" onClick="verifForm(this.form)"

onClick="this.form.submit();this.disabled=true;this.value='Patientez...'"
disabled />

</FORM>

</BODY>



et là, la vérification ne se fait pas, pire : les formulaire est envoyé, et on passe à ma page email.php .

Est-ce parce que je suis sur Mozilla Firefox ?????

sinon, comment puis-je corriger ce script ???


Merci !!

[>Ced<]
apprenti débutant wink.gif
Dan
Et en mettant un commande.submit() au lieu de formulaire.submit() dans ta fonction ? Je ne sais pas d'où vient l'objet "formulaire" ?
Vincent
bon,

RookieCed, ton javascript et l'utilisation de l'objet 'this' est faux

si tu veux utiliser l'objet 'this' pour passer en parametre l'objet 'form' il faut utiliser 'this' dans la balise <form> , exemple :
HTML
<FORM method="POST" action="maPageASoumettre.php" onSubmit="return soumettre(this)">


ensuite, dans ma fonction javascript, j'ai le droit d'utiliser le formulaire, ses methodes et attributs :
CODE
function soumettre(monFormulaire){
 alert("Attention, je soumets le formulaire : "+ monFormulaire.name)
 monFormulaire.submit()
}
RookieCed
désolé d'être lourd, mais je comprend pas bien.....

que dois-je garder, et que dois-je jeter ????

(je m'excuse encore, mais je suis vraiment un débutant de chez débutant !!!)


Merci

[>Ced<]
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.