Verification de champ php/java script

Résolu
Bonjour,

j'ai fais un petit script pour rendre obligatoire un champ

<SCRIPT LANGUAGE="JavaScript">
function verifform(formulaire)
{
if(formulaire.code_postal.value == "")
alert('Entrez un code postal');

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

le probleme est que je l'utilise en fesant :
<input type="button" value="Envoyer" onClick="verifform(this.form)" />
et donc il vérifie que si je clic sur envoyer mais si je j'appuie sur entrer il transmet sans vérifier
quelqu'un aurai une solution pour qu'il verifie aussi quand on fait entré ?
Configuration: Windows 2000
Firefox 2.0.0.14

9 réponses

  1. Salut,

    La verif en javascript ne dois pas être ta seul verif. Du fait que le javascript peu être désactiver sur les postes clients, fait tes verifs aussi dans ton code php.
    0
    1. oui oui je les ai faite aussi

      if(empty($n_dossier))
      {
      print("<center>Le '<b>numero de dossier</b>' est vide !</center>");
      echo "<br><br><center><a href=form3.html target=centre.html>retour au formulaire</a></center>";
      exit();
      }

      mais j'aimerai quand même que si le java script est activé il vérifie quand on clic et quand on fait entré
      0
      1. Ah peut être une solution dans el form : tu met action="javascript:verif()", et tu peu alors mettre ton boutton en type="submtit"
        0
        1. mais j'ai deja
          <FORM Method="POST" Action="resultat2.php">
          je met
          <FORM Method="POST" Action="javascript:verif();resultat2.php"> ??
          0
          1. wai tu peux essayé ta solution. parce que si tu appels que le javascipt : <FORM Method="POST" Action="javascript:verif();"> je vois pas comment (encore faudrait-il chercher) te rediriger vers ta page php en gardant les valeurs des champs. Mais c'est à creuser
            0
        2. c'est bien ça mon problème, faire la verif et transmettre les valeur que si la verif est bonne
          0
          1. J’ai essayé ce code et ça marche très bien, pas de problème d'entrée, si t peux nous envoyé ton code complet, il y a surement un problème quelque part

            <SCRIPT LANGUAGE="JavaScript">
            function verifform(formulaire)
            {
            if(formulaire.code_postal.value == "")
            alert('Entrez un code postal');

            else
            formulaire.submit();
            }
            </SCRIPT>
            <FORM Method="POST" Action="resultat2.php">
            <input type="text" name="code_postal"/>
            <input type="button" value="Envoyer" onClick="verifform(this.form)" />
            </form>
            0
        3. <SCRIPT LANGUAGE="JavaScript">
          function verifform(formulaire)
          {
          if(formulaire.code_postal.value == "")
          alert('Entrez un code postal');

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

          <form Method="POST" Action="resultat7.php">

          code_postal :
          <input type="text" name="code_postal" />

          <input type="button" value="Envoyer" onClick="verifform(this.form)" />
          <input type="reset" name="reset" value="reset" />
          0
          1. Essaie de fermé ton form avec </form> peut être qu'il y a un bouton submit plus loin dans ta page
            0
        4. il est fermé jai juste pas copier cette parti
          0
          1. J’ai testé ton code sur ma machine et tous marche bien je ne comprends pas d’où vient le problème
            0
        5. même si tu met le curseur de ta souris dans le champ a remplir et que tu tape sur entré ?
          parce que moi aussi sans mettre le curseur dans la textbox il n'y a pas de problème mais des que j'ai la main pour remplir et que j'appuie sur entré il transmet sans exécuter le code javascrpit
          0
          1. Oui je vien de remarqué le problème, en effai les form execute un submit voici une solution avec javascript

            <SCRIPT LANGUAGE="JavaScript">
            function disableEnterKey(e)
            {
            var key;

            if(window.event)
            key = window.event.keyCode; //IE
            else
            key = e.which; //firefox
            if(key == 13)
            return false;
            else
            return true;
            }

            function verifform(formulaire)
            {
            if(formulaire.code_postal.value == "")
            alert('Entrez un code postal');

            else
            formulaire.submit();
            }

            </SCRIPT>

            <form Method="POST" Action="resultat7.php">

            code_postal :
            <input type="text" name="code_postal" onKeyPress="return disableEnterKey(event)"></input>

            <input type="button" value="Envoyer" onClick="verifform(this.form)" />
            <input type="reset" name="reset" value="reset" />
            0
        6. ah merci beaucoup ça marche niquel =)
          0