Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2135 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [resolu] Envoi des données par PHP après vérification Ajax

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[resolu] Envoi des données par PHP après vérification Ajax

n°2081565
xkamui
Their Destiny Was Foreordained
Posté le 09-06-2011 à 13:19:43  profilanswer
 

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 :cry:
 
Voici un aperçu du code en question :  

Code :
  1. <body>
  2.   <form action="signup.save.php" method="post" id="signup">
  3.    <fieldset>
  4.     <label for="login">Nom d'utilisateur&#8226;</label>
  5.     <input type="text" name="login" id="login" value="" />
  6.     <div id="msg-login">
  7.      <img src="images/template/signup-blank-16.png" class="stt-blank" alt="Choisissez un nom d'utilisateur" title="Choisissez un nom d'utilisateur" />
  8.      <img src="images/template/signup-warnd-16.png" class="stt-warnd" alt="Champs obligatoire" title="Champs obligatoire" />
  9.      <img src="images/template/signup-error-16.png" class="stt-error" alt="Nom d'utilisateur indisponible" title="Nom d'utilisateur indisponible" />
  10.      <img src="images/template/signup-valid-16.png" class="stt-valid" alt="Nom d'utilisateur disponible" title="Nom d'utilisateur disponible" />
  11.     </div>
  12.     <br class="clear" />
  13.     <input type="submit" name="valid" id="valid" value="Valider" />
  14.    </fieldset>
  15.   </form>
  16.   <script type="text/javascript">
  17.    $(document).ready(function() {
  18.     $('.stt-warnd').hide();
  19.     $('.stt-error').hide();
  20.     $('.stt-valid').hide();
  21.     $('#signup').submit(function() {
  22.      var login  = $('#login').val();
  23.      var dataString = 'login=' + login + '';
  24.      var err   = '';
  25.      $.ajax({
  26.       type: 'POST',
  27.       url:  'signup.check.php',
  28.       data: dataString,
  29.       success: function(data) {
  30.        var responseData = data;
  31.        var reg = new RegExp("[,]+", "g" );
  32.        var rag = new RegExp("[:]+", "g" );
  33.        var tab = data.split(reg);
  34.        for (i = 0; i < tab.length; i++) {
  35.         var nfo = tab[i].split(rag);
  36.         if (nfo[1] == 'error') {
  37.          $('#msg-' + nfo[0] + ' img.stt-blank').hide();
  38.          $('#msg-' + nfo[0] + ' img.stt-warnd').hide();
  39.          $('#msg-' + nfo[0] + ' img.stt-valid').hide();
  40.          $('#msg-' + nfo[0] + ' img.stt-error').fadeIn();
  41.         } else if (nfo[1] == 'valid') {
  42.          $('#msg-' + nfo[0] + ' img.stt-blank').hide();
  43.          $('#msg-' + nfo[0] + ' img.stt-warnd').hide();
  44.          $('#msg-' + nfo[0] + ' img.stt-error').hide();
  45.          $('#msg-' + nfo[0] + ' img.stt-valid').fadeIn();
  46.         } else if (nfo[1] == 'warnd') {
  47.          $('#msg-' + nfo[0] + ' img.stt-blank').hide();
  48.          $('#msg-' + nfo[0] + ' img.stt-valid').hide();
  49.          $('#msg-' + nfo[0] + ' img.stt-error').hide();
  50.          $('#msg-' + nfo[0] + ' img.stt-warnd').fadeIn();
  51.         }
  52.        }
  53.       }
  54.      });
  55.      return false;
  56.     });
  57.    });
  58.   </script>
  59.  </body>


 
Dans le cas présent, si je retire le 'return false;' (ligne 64), 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'.
 
Si vous avez une idée de comment je peux faire pour avancer, je vous en saurais gré.
 
Au revoir et Merci


Message édité par xkamui le 10-06-2011 à 11:00:42
mood
Publicité
Posté le 09-06-2011 à 13:19:43  profilanswer
 

n°2081723
xkamui
Their Destiny Was Foreordained
Posté le 10-06-2011 à 01:05:54  profilanswer
 

petit up du soir, espoir ^.^

n°2081732
czh
Posté le 10-06-2011 à 02:07:46  profilanswer
 

Généralement c'est "return false;" pour empêcher l'envoi du formulaire, et "return true;" lorsque tout s'est bien passé (envoi du formulaire au script PHP)
 
edit: Heu $.ajax c'est asynchrone donc ta ligne "return false;" est inchangeable. Il faudrait "submitter" manuellement l'élément HTML form à  l'intérieur du callback ajax si tu veux provoquer l'envoi du formulaire asynchroniquement. du genre $('#signup')[0].submit(); (si je me rappelle bien avec jquery)


Message édité par czh le 10-06-2011 à 02:12:53
n°2081772
xkamui
Their Destiny Was Foreordained
Posté le 10-06-2011 à 10:10:57  profilanswer
 

Bonjour et merci de votre réponse

 

Celà m'a beaucoup aidé et mon problème est résolu !!

 

Encore Merci


Message édité par xkamui le 10-06-2011 à 11:00:26

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [resolu] Envoi des données par PHP après vérification Ajax

 

Sujets relatifs
Vérification code JavascriptEnvoi de mail
tableau PHP multi dimenssion avec indice [RESOLU]Mssql / Php : module spécifié introuvable
Quel livre pour débuter en PHP ?[PHP] Trouver le fichier dernièrement modifié commençant par...
Validation formulaire impossible[PHP] Infobulles personnalisées / DIV mobiles ?
formulaire d'enregistrement et récupération de donnéesProblème de variable PHP
Plus de sujets relatifs à : [resolu] Envoi des données par PHP après vérification Ajax


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR