1 Dernière modification par desbutes (07-02-2012 00:50:26)

Sujet : [Résolu] renvoi de data requete php sql

$(document).ready(function(){
    $("#formulaire").submit(function(){
        $.ajax({type:"POST", data: $(this).serialize(),  url:"traite_identif_collegue.php",
            success: 
           [i] /*function(data) {
  $('#post').html(data)};*/[/i]
            function(){
            $("#formulaire").fadeOut("40");
                 alert("votre MAJ a été effectuée.Cliquez dans le document pour mettre à jour le tableau"); 
                
                
                
                  $("#doc1").click(function() {
                location.reload();
            });
            },
                        error: function(){
                    $("#post").html('Une erreur est survenue.');
            }
        });<!--$.ajax({type:"POST",  -->
        return false;
    });<!--$("#formulaire").submit(function(){ -->
});<!--fin $(document).ready(function(){ -->

</script>

2

Re : [Résolu] renvoi de data requete php sql

Bonjour,

Essai de concaténer des variables php. Je pense pas que ce soit l'alert qui ne t'affiche rien, mais plutôt que ça ne te retourne rien, tu n'affiche peut être pas les erreurs php, du coup vu qu'il n'arrive pas à faire le "echo", il te retourne du "vide".

echo( $_POST[prenom].$_POST[nom]."a été saisi ");

Autrement pourquoi appeler la fonction click de "#doc1", au submit de ton formulaire ? Si la personne click sur ton bouton "mettre à jour" avant d'avoir posté un formulaire, cela ne fera rien. Est-ce ton souhait ?

Re : [Résolu] renvoi de data requete php sql

4

Re : [Résolu] renvoi de data requete php sql

[i] /*function(data) {
  $('#post').html(data)};*/[/i]
            function(){

5 Dernière modification par desbutes (07-02-2012 17:41:30)

Re : [Résolu] renvoi de data requete php sql

$(document).ready(function(){
    $("#formulaire").submit(function(){
        $.ajax({type:"POST", data: $(this).serialize(),  url:"traite_identif_collegue.php",
            success: function(data){
        $('#post').html(data);
        /*OU
        alert(data);*/
        
        $("#formulaire").fadeOut("40");
       /* alert("votre MAJ a été effectuée.Cliquez dans le document pour mettre à jour le tableau"); */

        $("#doc1").click(function() {
            location.reload();
        });
    },:    /* 1 pour quoi on ferme function(data) ici et pas apres $('#post').html(data); ? */  

  /*2 pourquoi a la fin de$("#doc1").click(function() {
            location.reload();
        }); on termine la fonction par ;  alors que  on ne ponctue pas function(data){  par ;    ? */  

6

Re : [Résolu] renvoi de data requete php sql

Bonjour,

Je vais essayer de te répondre, mais je n'ai pas pour qualité d'être un bon prof.

Avant tout je te conseille d'indenter un peu mieux ton code, tu comprendra beaucoup mieux.

Pour répondre à ta dernière question, le "error" est utile dans le cas ou ton fichier appelé dans "l'url" de l'ajax est introuvable ou que cette page renvoie une erreur 500.

Une ligne js doit toujours se terminer par ";", ça ok.
On en arrive à se mélanger avec l'imbrication de function, voyons par des petits exemples.

quand on faut un "click", on termine la ligne par ";" mais également chaque ligne d'instruction à l'intérieur pk ?

$("#doc1").click(function() {
      location.reload();
 });

Ceci, pourrait très bien se retrouver comme ceci :

$("#doc1").click(function() {location.reload();});

Prenons maintenant le comportement avec une requête ajax.
Nous avons ca :

$.ajax({
    type:"POST", 
    data: $(this).serialize(),
    url:"traite_identif_collegue.php",
    success: function(data){
        $('#post').html(data);
        // OU
        alert(data);
        
        $("#formulaire").fadeOut("40");
        alert("votre MAJ a été effectuée.Cliquez dans le document pour mettre à jour le tableau"); 

        $("#doc1").click(function() {
            location.reload();
        });
    },
    error: function() {
        $("#post").html('Une erreur est survenue.');
    }
});

Nous sommes dans un objet, chaque paire (clé:valeur) de cette objet est séparé par des virgules. Le "function(data)" fait parti de la valeur de le clé "success" donc il se termine par une virgule (ou rien dans le cas ou "success" est la dernière paire).
A l'intérieur de ce "function(data)" nous avons encore des lignes d’instructions, donc des points virgules.

Concernant ton autre question, effectivement tu peux changer, plusieurs solution sont possible :
La solution que je t'ai déjà soumise, mais avec "document ready" et le "submit" :

$(document).ready(function(){
    $("#formulaire").submit(function(){
        $.ajax({
            type:"POST", 
            data: $(this).serialize(),
            url:"traite_identif_collegue.php",
            success: function(data){
                $('#post').html(data);
                
                $("#formulaire").fadeOut("40");
                alert("votre MAJ a été effectuée.Cliquez dans le document pour mettre à jour le tableau"); 

                $("#doc1").click(function() {
                    location.reload();
                });
            },
            error: function() {
                $("#post").html('Une erreur est survenue.');
            }
        });
    });
});

ou celle ci avec le "fadeout", "l'alart" et le "click" apres ton ajax.
Ou tu pourrais également les placer avant.

$(document).ready(function(){
    $("#formulaire").submit(function(){
        $.ajax({
            type:"POST", 
            data: $(this).serialize(),
            url:"traite_identif_collegue.php",
            success: function(data){
                $('#post').html(data);
            },
            error: function() {
                $("#post").html('Une erreur est survenue.');
            }
        });
        
        $("#formulaire").fadeOut("40");
        alert("votre MAJ a été effectuée.Cliquez dans le document pour mettre à jour le tableau"); 

        $("#doc1").click(function() {
            location.reload();
        });
    });
});

Lochar,

7 Dernière modification par desbutes (09-02-2012 20:35:13)

Re : [Résolu] renvoi de data requete php sql

Merci Lochar
je comprends et j'apprends comme quoi, tes qualités de pédago ne sont pas trop abscons.
Je croyais que la fonction(data) s'arretait  juste apres sa ligne de commande
Cordialement
Desbutes