Bonjour
J'ai un script Ajax et PHP qui me vérifient mes données lors de l'envoi d'un formulaire, et cela fonctionne parfaitement...
Au détail près que, lorsque toute les erreurs de l'internaute ont été corrigée, le formulaire ne s’envoie pas
Voici un aperçu du code en question :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <form action="signup.save.php" method="post" id="signup"> <fieldset> <label for="login">Nom d'utilisateur</label> <input type="text" name="login" id="login" value="" /> <div id="msg-login"> <img src="images/template/signup-blank-16.png" class="stt-blank" alt="Choisissez un nom d'utilisateur" title="Choisissez un nom d'utilisateur" /> <img src="images/template/signup-warnd-16.png" class="stt-warnd" alt="Champs obligatoire" title="Champs obligatoire" /> <img src="images/template/signup-error-16.png" class="stt-error" alt="Nom d'utilisateur indisponible" title="Nom d'utilisateur indisponible" /> <img src="images/template/signup-valid-16.png" class="stt-valid" alt="Nom d'utilisateur disponible" title="Nom d'utilisateur disponible" /> </div> <br class="clear" /> <input type="submit" name="valid" id="valid" value="Valider" /> </fieldset> </form>Dans le cas présent, si je retire le 'return false;' (ligne 46 du javascript), je passe sur la page 'signup.save.php', mais les données ne sont pas vérifiées ; si je laisse, mes données sont vérifiée mais je n'accède jamais à la page 'signup.save.php'.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 <script type="text/javascript"> $(document).ready(function() { $('.stt-warnd').hide(); $('.stt-error').hide(); $('.stt-valid').hide(); $('#signup').submit(function() { var login = $('#login').val(); var dataString = 'login=' + login + ''; var err = ''; $.ajax({ type: 'POST', url: 'signup.check.php', data: dataString, success: function(data) { var responseData = data; var reg = new RegExp("[,]+", "g"); var rag = new RegExp("[:]+", "g"); var tab = data.split(reg); for (i = 0; i < tab.length; i++) { var nfo = tab[i].split(rag); if (nfo[1] == 'error') { $('#msg-' + nfo[0] + ' img.stt-blank').hide(); $('#msg-' + nfo[0] + ' img.stt-warnd').hide(); $('#msg-' + nfo[0] + ' img.stt-valid').hide(); $('#msg-' + nfo[0] + ' img.stt-error').fadeIn(); } else if (nfo[1] == 'valid') { $('#msg-' + nfo[0] + ' img.stt-blank').hide(); $('#msg-' + nfo[0] + ' img.stt-warnd').hide(); $('#msg-' + nfo[0] + ' img.stt-error').hide(); $('#msg-' + nfo[0] + ' img.stt-valid').fadeIn(); } else if (nfo[1] == 'warnd') { $('#msg-' + nfo[0] + ' img.stt-blank').hide(); $('#msg-' + nfo[0] + ' img.stt-valid').hide(); $('#msg-' + nfo[0] + ' img.stt-error').hide(); $('#msg-' + nfo[0] + ' img.stt-warnd').fadeIn(); } } } }); return false; }); }); </script>
Si vous avez une idée de comment je peux faire pour avancer, je vous en saurais gré.
Au revoir et Merci
Partager