Pourquoi ce formulaire n'est-il pas testé ?

Pourquoi ce formulaire n'est-il pas testé ? - HTML/CSS - Programmation

Marsh Posté le 21-06-2010 à 16:20:48    

Bonjour,
 
Voici un formulaire qui permet à des personnes se s'inscrire à une newsletter.
 
Le problème est que le fomulaire est envoyé sans jamais être testé (si manque email ou @)
Pouvez vous m'aider et me dire pourquoi ?
 
 [:abnocte invictus]  
Code du js
 
 

Code :
  1. <script language="javascript">
  2. function valid(obj){
  3. obj=document.forms["fiche"];
  4. if( obj.email.value=='')
  5. {
  6. alert("Vous n'avez rien saisi !" );
  7. return false;
  8. }
  9. test="" + obj.email.value;
  10. for(var k = 0; k < test.length;k++)
  11. {
  12. var c = test.substring(k,k+1);
  13. if(c == "@" )
  14. {
  15. return true;
  16. }
  17. }
  18. alert("Votre adresse Email doit contenir @" );
  19. return false;
  20. }
  21. </script>


 
Code html
 

Code :
  1. <form name="fiche" action='validnewsletter.php' >
  2.         <input type="text" name=email value="Votre email" onclick="if(this.value=='Votre email') this.value='';" size="30">
  3.         <input type="submit" value="S'inscrire">
  4.        </form>


 
Merci

Reply

Marsh Posté le 21-06-2010 à 16:20:48   

Reply

Marsh Posté le 21-06-2010 à 16:39:51    

faut voir ton PHP
la ton javascript renvoie des valeurs true ou false si il y a ou pas l'arobase mais à quel moment cela empeche-t-il ton PHP d'envoyer le message ?

Reply

Marsh Posté le 21-06-2010 à 16:50:06    

Merci.
Non en fait les infos sont systématiquement envoyées, c'est à dire que le javascript ne teste rien, le "alert" ne fonctionne pas...
Le fichier php lui marche correctement il inscrit bien les infos dans la bdd

Reply

Marsh Posté le 21-06-2010 à 17:00:00    

oui mais justement, tu voudrais qu'il ne fonctionne pas dans le cas ou il y ait un probleme sur l'adresse, si j'ai bien compris.
rien ne l'y empeche.
 
par contre tu devrais avoir l'alerte, oui.
mais à quel moment ta fonction valid est-elle appelée ?

Reply

Marsh Posté le 21-06-2010 à 17:03:01    

ben là c'est au moment de valider le formulaire.
A priori le js teste le formulaire et si c'est ok il envoie le tout et le fichier php traite les infos.

Reply

Marsh Posté le 21-06-2010 à 18:22:37    

dexenium a écrit :

ben là c'est au moment de valider le formulaire.
A priori le js teste le formulaire et si c'est ok il envoie le tout et le fichier php traite les infos.


 
Il faut lui dire à ton formulaire de lancer la fonction javascript avant de faire le submit, il va pas le deviner tout seul !
 

Code :
  1. <form name="fiche" action='validnewsletter.php' onsubmit="return valid(this)">
  2. ...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed