Partage
  • Partager sur Facebook
  • Partager sur Twitter

{Ajax} Afficher une div suivant si c'est bon ou pas

Sujet résolu
    18 juillet 2010 à 14:31:50

    Bonjour, j'ai une question toute bête, que malheureusement, je ne trouve aucune erreur.

    Ce bout de code retourne toutes les erreurs retourner par php, et je souhaite les affichés dans une div.

    <?php
    echo "<div class='message_erreur'>";
    echo"<p>Une ou plusieurs erreurs se sont produites pendant l'inscription";
                for($i=0;$i<count($erreurs);$i++)
                {
                echo "".$erreurs[$i]."<br />";
                }
            echo "</p></div>";
    ?>
    


    Voila mon script :

    //INSCRIPTION
    $("#registerForm").submit( function() {							 
    $.ajax({ 
    type: "POST", 
    url: "inscription_ok.php", 
    data: "pseudo="+$("#pseudo").val()+"&password="+$("#password").val()+"&confirm_password="+$("#confirm_password").val()+"&mail="+$("#mail").val()+"&sexe="+$("#sexe").val(), 
    success: function(msg){
     
    if(msg==1) 
    {
    document.getElementById('bloc_message_en_tete').innerHTML=
    "<div class='bloc_sucess'>Bienvenue "+$("#pseudo").val()+" vous &#234;tes maintenant inscrit sur xxx</div>";
    }
     
    else 
    {
    document.getElementById('bloc_message_en_tete').innerHTML=
    "<div class='message_erreur'>Impossible de vous inscrire !</div>";
    //Je peux afficher qu'un message au lieu des messages d'erreurs sur la page d'inscription...
    }
    }
    });
    return false; 
    });
    //Fin
    


    Comme vous pouvez le voir, je peux qu'afficher les messages, que sur le script ajax... :-°
    Or, moi comme je l'est dit, je veux à la place, afficher les erreurs php.

    <?php
    session_start();
    include('Design/includes/connexion_bdd.php');
    
    //On récupère les variables
    $i = 0;
    $temps = time(); 
    
    $pseudo = stripslashes(htmlspecialchars($_POST['pseudo']));
    $password = md5($_POST['password']);
    $confirm_password = md5($_POST['confirm_password']);
    $mail = stripslashes(htmlspecialchars($_POST['mail']));
    
    if(!empty($_POST['sexe']))
    {
    $sexe = stripslashes(htmlspecialchars($_POST['sexe']));
    }
    else
    {
    $sexe = "Non définis";
    }
    
    $erreurs = array();//tableau qui stocke les erreurs.
    
    if(empty($pseudo))
    {
    $erreurs[] = "Le champ pseudo est vide";
    $i++;
    }
    
    if(empty($password))
    {
    $erreurs[] = "Le champ password est vide";
    $i++;
    }
    
    if(empty($confirm_password))
    {
    $erreurs[] = "Le champ confirm_password est vide";
    $i++;
    }
    
    if(empty($mail))
    {
    $erreurs[] = "Le champ mail est vide";
    $i++;
    }
    
    if(empty($sexe))
    {
    $erreurs[] = "Le champ sexe est vide";
    $i++;
    }
    
    //Vérification du pseudo
    $nombrepseudo = mysql_result(mysql_query('SELECT COUNT(*) FROM membres WHERE membres_pseudo = "'.$pseudo.'"'), 0);
    
    if ($nombrepseudo != 0)
    {
    $erreurs[] = "Votre pseudo est déjà utilisée par un membre";
            $i++;
    }
    
    //Vérification du password
    if ($password != $confirm_password || empty($confirm_password) || empty($password))
    {
    $erreurs[] = "Votre mot de passe et votre confirmation diffèrent, ou sont vides";
            $i++;
    }
    
    //Vérification de l'adresse email
    //Il faut que l'adresse email ne soit pas utilisés par un membres
    
    $nombremail = mysql_result(mysql_query('SELECT COUNT(*) FROM membres WHERE membres_email = "'.$mail.'"'), 0);
    
    if ($nombremail != 0)
    {
    $erreurs[] = "Votre adresse email est déjà utilisée par un membre";
            $i++;
    }
    
    //On vérifie la forme maintenant
    if (!preg_match("#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-z]{2,4}$#", $mail))
    {
    $erreurs[] = "Votre adresse E-Mail n'a pas un format valide";
       $i++;
    }
    
    if(empty($mail))
    {
    $erreurs[] = "Le champ email est obligatoire !";
    $i++;
    }
    
    if ($i == 0) // Si i est vide, il n'y a pas d'erreur
    {
    echo "1";
     // echo '<div class="bloc_sucess">';
    // echo utf8_encode('<p>Bienvenue '.$pseudo.' vous êtes maintenant inscrit sur xxx</p></div>');
    
    
    //On balance le tout dans notre table
    
    mysql_query('
    INSERT INTO membres (membres_pseudo, membres_pass, membres_email,             
    membres_date_inscription, membres_rang, membres_sexe)
    VALUES ("'.$pseudo.'" , "'.$password.'" , "'.$mail.'" ,
    "'.$temps.'" , "2", "'.$sexe.'" ) ') or die(mysql_error());
    
    $id_du_membre = mysql_insert_id();
    
    //Les variables SUPERGLOBALES
    $_SESSION['id'] = $id_du_membre;
    $_SESSION['pseudo'] = $pseudo;
    }
    else
    {
    // echo "<div class='message_erreur'>";
    		// echo"<p>Une ou plusieurs erreurs se sont produites pendant l'inscription";
                // for($i=0;$i<count($erreurs);$i++)
                // {
                // echo "".$erreurs[$i]."<br />";
                // }
            // echo "</p></div>";
    		echo "0";
    }
    ?>
    


    Merci, d'avance. :D
    • Partager sur Facebook
    • Partager sur Twitter
      21 juillet 2010 à 14:49:06

      Vraiment personne pour m'aider ? :euh:
      • Partager sur Facebook
      • Partager sur Twitter
        21 juillet 2010 à 15:07:03

        Je vois pas le souci :

        <?php
        else
        {
         echo "<div class='message_erreur'>";
        	    echo"<p>Une ou plusieurs erreurs se sont produites pendant l'inscription";
                    for($i=0;$i<count($erreurs);$i++)
                    {
                    echo "".$erreurs[$i]."<br />";
                    }
                echo "</p></div>";
        }
        


        Et dans ton callback, tu fais :

        success: function(msg){
         
        if(msg==1) 
        {
        document.getElementById('bloc_message_en_tete').innerHTML=
        "<div class='bloc_sucess'>Bienvenue "+$("#pseudo").val()+" vous &#234;tes maintenant inscrit sur xxx</div>";
        }
         
        else 
        {
        document.getElementById('bloc_message_en_tete').innerHTML= msg;
        
        }
        }
        });
        return false; 
        });
        

        • Partager sur Facebook
        • Partager sur Twitter
          21 juillet 2010 à 15:12:07

          Ha, c'était si simple que sa ? Pourtant, j'ai chercher... je vous le jure ! :p

          Encore, merci. :D
          • Partager sur Facebook
          • Partager sur Twitter

          {Ajax} Afficher une div suivant si c'est bon ou pas

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown