IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] Affichage en AJAX


Sujet :

AJAX

  1. #21
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    En pièces jointes, tu trouveras les deux fichiers modifiés.

    Dans le traitement PHP, j'ai fait deux essais d'affichages comme tu le verras.
    Dans la page d'affichage, j'ai mis en dehors de la boucle while : echo '<input type="hidden" id="id_reponse" value="'.$id_reponse.'" />';.

    Aucune différence, qu'est-ce qu'il faut changer ?

    Je te rappelle l'objectif recherché :
    Afficher cette alerte alert("une nouvelle réponse a été détectée, veuillez rafraichir la page !"); uniquement quand une réponse a été postée.
    Quand il n'y a pas de nouvelle réponse, ce n'est pas la peine d'afficher l'alerte.
    Actuellement, l'alerte s'affiche à chaque chargement de la page qu'il y ait ou non une nouvelle réponse dans la base de données c'est-à-dire à chaque ouverture de la page.

    Actuellement, le champs hidden contient l'identifiant de la dernière réponse. En fait, il faut que ce champs hidden contienne le résultat de la requête SQL qui permet de compter les identifiants des réponses issus de la base de données pour pouvoir le comparer avec xhr.responseText. Si le nombre est le même alors on n'affiche pas l'alerte javascript par contre s'il est différent, oui.

    Est-ce que le raisonnement est bon ?

    Si c'est ça, le fichier du traitement PHP et donc la ligne xhr.open("POST", "fichier.php", true); ne servent plus.
    Il faudrait :
    -exécuter cette requête SQL :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT count(id_reponse) FROM reponses r
    JOIN questions q 
           ON q.id_question=r.id_question
    JOIN chapitres c 
           ON (c.id_chapitre = q.id_chapitre AND c.id_cours='".$id_cours_tp."')
    -mettre le résultat de la requête SQL dans <input type="hidden" id="id_reponse" value="'..'" />.
    Comment afficher le résultat d'une requête SQL avec COUNT ?
    -comparer l'identifiant qui est dans la zone de texte et xhr.responseText : si c'est le même alors pas d'affichage de l'alerte sinon oui.

    Est-ce que je me rapproche ?

    En pièce jointe, je te mets la deuxième version. Rien n'a changé ! Est-ce que tu peux m'aider à finir de régler ce problème STP ?

  2. #22
    Membre confirmé Avatar de freddou17
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2013
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 341
    Points : 566
    Points
    566
    Par défaut
    Modifie ton php

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // Affichage
    // Première tentative - aucune différence
    $array = mysql_fetch_assoc($compte_reponses_eleves);
    echo "Il y a test"."'.$array['id_reponse'].'"."nouvelle(s) réponse(s).";
     
    // Deuxième tentative - aucune différence
    while($row=mysql_fetch_array($compte_reponses_eleves)){
    	echo "test".$row[0];
    }

    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(ancienneVal != xhr.responseText) {
    enlève ce test et dis moi ce que fais le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alert(xhr.responseText)
    tu me diras le résultat...
    "Aucun de nous ne sait ce que nous savons tous, ensemble."
    Lien vers mon appli Funcash n'hésitez pas à donner votre avis

  3. #23
    Membre confirmé Avatar de freddou17
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2013
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 341
    Points : 566
    Points
    566
    Par défaut
    Le raisonnement c'est le bon mais par contre tu as toujours besoin du fichier recuperation_donnees_correction.php. Tu dois conserver ton AJAX

    Tu as 2 points à corriger:
    1- afficher le count
    2- gérer le cas du premier appel

    ... qlqs infos

    Est ce que ta requete count passe sur phpMyAdmin? Si oui tu dois réussir à l'afficher row[0] doit marcher... .
    Tu dois rajouter dans ton test :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if(ancienneVal != "" ancienneVal != xhr.responseText){
        // ancienneVal vaut "" au premier appel
    }
    ancienneVal = xhr.responseText;
     
    ...
    Tu y es presque par contre j'ai un peu peur quand tu dis que tu n'as plus besoin de recuperation_donnees_correction.php
    "Aucun de nous ne sait ce que nous savons tous, ensemble."
    Lien vers mon appli Funcash n'hésitez pas à donner votre avis

  4. #24
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    Avec ce code, à chaque chargement de la page, ce message s'affiche : Il y a nouvelle(s) réponse(s)..

  5. #25
    Membre confirmé Avatar de freddou17
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2013
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 341
    Points : 566
    Points
    566
    Par défaut
    et le résultat de alert(xhr.responseText).... ?
    "Aucun de nous ne sait ce que nous savons tous, ensemble."
    Lien vers mon appli Funcash n'hésitez pas à donner votre avis

  6. #26
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    Citation Envoyé par freddou17 Voir le message
    Est ce que ta requete count passe sur phpMyAdmin? Si oui tu dois réussir à l'afficher row[0] doit marcher... .
    Sur PHPMyAdmin, la requête SQL s'exécute, elle fonctionne.
    Citation Envoyé par freddou17 Voir le message
    Le raisonnement c'est le bon mais par contre tu as toujours besoin du fichier recuperation_donnees_correction.php. Tu dois conserver ton AJAX

    Tu as 2 points à corriger:
    1- afficher le count
    2- gérer le cas du premier appel

    ... qlqs infos
    Affichage du count :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while($row=mysql_fetch_array($compte_reponses_eleves)){
    	echo '<input type="button" id="id_reponse" value="'.$row['TOTAL'].'" />'; // Résultat de la requête SQL dans un champs hidden ajouté déplacé (pas dans la boucle while)
    }

    Gestion du premier appel :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if(ancienneVal != "" ancienneVal != xhr.responseText){
    	// ancienneVal vaut "" au premier appel
    }
    Citation Envoyé par freddou17 Voir le message
    Tu dois rajouter dans ton test :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if(ancienneVal != "" ancienneVal != xhr.responseText){
        // ancienneVal vaut "" au premier appel
    }
    ancienneVal = xhr.responseText;
     
    ...
    Tu y es presque par contre j'ai un peu peur quand tu dis que tu n'as plus besoin de recuperation_donnees_correction.php
    En pièces jointes, je te mets les deux fichiers modifiés. L'alerte ne s'affiche plus. On se rapproche, on est plus très loin, qu'est-ce qui ne va pas maintenant ?

  7. #27
    Membre confirmé Avatar de freddou17
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2013
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 341
    Points : 566
    Points
    566
    Par défaut
    Tu peux faire la même requete dans ta page à afficher que dans celle qui te permet de faire de l'AJAX mais c'est du code dupliqué... on verra plus tard pour la factorisation

    Tu n'as pas d'alert et c'est normal dans le code tu a commenté tes alert(s), voici ton js modifié du coup le test est simplifié vu

    Code javascript : 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
     
    function go(id_cours_tp) { // Envoi de l'identifiant du cours
    	var xhr =  init_xhr();
    	var ancienneVal = document.getElementById("nb_reponse_cours").value;//modification de id_reponse en nb_reponse_cours, plus parlant
    	xhr.onreadystatechange = function() {
    		if (xhr.readyState == 4 && xhr.status == 200) {
    			if(ancienneVal != xhr.responseText){
    			   alert("Recharger la page");
                               ancienneVal = xhr.responseText;    
    		       }
     
    		}
        }
    xhr.open("POST", "recuperation_donnees_correction.php", true); 
    xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    var id_cours_tp = '<?php echo $id_cours_tp; ?>';
    xhr.send("id_cours_tp=<?php echo $id_cours_tp; ?>");
    }

    Attention, ton code est dans le while du coup du génere trop de id_reponse :
    Place ce code juste après <body onload="go(<?php echo $id_cours_tp; ?>);">.

    Penses à bien remplacer
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<input type="button" id="id_reponse" value="'.$row['TOTAL'].'" />'
    par
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<input type="button" id="nb_reponse_cours" value="'.$row['TOTAL'].'" />'

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
    // Comptage du nombre d'enregistements (de réponse)
    $compte_reponses_eleves=mysql_query("SELECT count(id_reponse) AS TOTAL FROM reponses r
    JOIN questions q 
           ON q.id_question=r.id_question
    JOIN chapitres c 
           ON (c.id_chapitre = q.id_chapitre AND c.id_cours='".$id_cours_tp."')") or die('Erreur lors de la requête SQL qui permet de compter les réponses d\'un Cours/TP'.mysql_error()); // Envoie une requête à un serveur MySQL
    while($row=mysql_fetch_array($compte_reponses_eleves)){
    	echo '<input type="button" id="id_reponse" value="'.$row['TOTAL'].'" />'; // Résultat de la requête SQL dans un champs hidden ajouté déplacé (pas dans la boucle while)
    }

    Ensuite sur ta page php AJAX pense à ne faire un echo que du COUNT.
    "Aucun de nous ne sait ce que nous savons tous, ensemble."
    Lien vers mon appli Funcash n'hésitez pas à donner votre avis

  8. #28
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    En pièces jointes, tu trouveras les fichiers modifiés. Cette fois "Recharger la page" s'affiche tout le temps, à chaque chargement de la page.

    Qu'est-ce qu'il faut modifier ?

    Les balises <form> et du coup </form> ne sont pas correctement placées.

    Pour information : si je vais en passant par l'adresse URL sur la page du traitement PHP, une page blanche s'affiche.

    Sur la page du traitement PHP, il ne faut pas récupérer l'identifiant du cours en faisant $id_cours_tp = mysql_real_escape_string($_POST['id_cours_tp']); ?
    J'ai essayé, aucune différence.

    Si j'essaye en mettant alert(xhr.responseText); après if (xhr.readyState == 4 && xhr.status == 200) {, il affiche une boite de dialogue vide avant le message "Recharger la page".
    Si j'essaye en mettant alert(xhr.responseText); dans if(ancienneVal != xhr.responseText){, il affiche que la boite de dialogue vide. Le message "Recharger la page", lui, ne s'affiche pas.

    Je pense que le problème c'est que xhr.responseText est toujours égal à une chaine vide, il est donc toujours différent par rapport à ancienneVal ce qui expliquerait que le test if(ancienneVal != xhr.responseText){ soit toujours vrai donc que l'alerte s'affiche tout le temps. Si je fais alert(xhr.responseText);, une boite de dialogue vide s'affiche, il ne peut donc jamais être égal à ancienneVal ! Il faudrait que xhr.responseText renvoie le nombre d'enregistrements issus de la base de données ce qui voudrait dire que le traitement PHP n'est pas le bon, il faudrait qu'il récupère le résultat de la requête SQL qui permet de compter le nombre d'enregistrements issus de la base de données pour pouvoir faire la comparaison. ancienneVal récupère la bonne valeur. Je suis en train de chercher comment récupérer le résultat d'une requête SQL avec COUNT.

    J'ai l'impression que c'est le fichier du traitement PHP qui ne fait rien car si je fais un echo "texte";, il ne s'affiche pas même si, j'en conviens, ce fichier n'est pas fait pour cela.

    Je comprends ce qu'on lui dit :
    -Récupération du nombre de réponses qu'on met dans la zone de texte <input type="button" id="nb_reponse_cours" value="'.$row['TOTAL'].'" />
    -Exécution de la requête SQL qui permet de compter le nombre d'enregistrements
    -Comparaison entre le nombre d'enregistrements total issus de la base de données et ancienneVal qui récupère le nombre total des enregistrements qu'il y a sur la page : si les deux sont différents alors il faut afficher l'alerte ; dans le cas contraire, non.
    Pourquoi ça ne fonctionne pas ? Est-ce que toi ça marche ?

  9. #29
    Membre confirmé Avatar de freddou17
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2013
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 341
    Points : 566
    Points
    566
    Par défaut
    Bien sur que dans le fichier php il faut récupérer la valeur id_cours_tp

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $_POST["id_cours_tp"]

    Peux tu regarder dans Firebug onglet réseau -> ce qu'il t'affiche dans la partie réponse de ta requête AJAX.

    Je penses que ça y est, tu as bien cerné le problème
    "Aucun de nous ne sait ce que nous savons tous, ensemble."
    Lien vers mon appli Funcash n'hésitez pas à donner votre avis

  10. #30
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    Citation Envoyé par freddou17 Voir le message
    Bien sur que dans le fichier php il faut récupérer la valeur id_cours_tp

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $_POST["id_cours_tp"]
    J'ai ajouté $id_cours_tp=$_POST["id_cours_tp"]; dans le traitement PHP.

    Citation Envoyé par freddou17 Voir le message
    Peux tu regarder dans Firebug onglet réseau -> ce qu'il t'affiche dans la partie réponse de ta requête AJAX.
    En testant sur Firebug, il y a : Resultat : 8.

    Citation Envoyé par freddou17 Voir le message
    Je penses que ça y est, tu as bien cerné le problème
    Oui, maintenant j'a compris le problème, il faut juste le réparer.

    En pièces jointes, tu trouveras les deux fichiers modifiés (ajout de $id_cours_tp=$_POST["id_cours_tp"]; et remplacement de echo "Resultat : ".$row[0]; par echo $row[0]; dans le traitement PHP).

    Alors maintenant, il n'affiche plus : "Recharger la page". De plus pour pouvoir voir les nouvelles réponses postées, il faut rafraichir la page : ça c'est logique. Il faut faire en sorte que l'alerte s'affiche quand il y a une insertion dans la base de données c'est-à-dire rendre dynamique tout ça.

    Afin de faire ça il faut appeler la fonction "go" à un intervalle, non ?

    En ajoutant <script>setInterval("go()", 2000);</script> ça fonctionne, seul problème : quand on clique sur "OK" (dans l'alerte), elle se réaffiche indéfiniment !

  11. #31
    Membre confirmé Avatar de freddou17
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2013
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 341
    Points : 566
    Points
    566
    Par défaut
    Citation Envoyé par vinceom92 Voir le message

    En ajoutant <script>setInterval("go()", 2000);</script> ça fonctionne, seul problème : quand on clique sur "OK" (dans l'alerte), elle se réaffiche indéfiniment !
    Peux tu remettre alert(ancienneVal) dans la fonction go, je voudrais savoir si l'input est bien mis à jour?
    Peux tester un trim sur xhr.responseText?
    "Aucun de nous ne sait ce que nous savons tous, ensemble."
    Lien vers mon appli Funcash n'hésitez pas à donner votre avis

  12. #32
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    En pièce jointe, tu trouveras le fichier modifié où tout marche !!!
    J'ai modifié le code javascript pour gérer l'affichage de l'alerte (uniquement une fois).

    Il ne reste plus qu'à ajouter un test pour tester s'il y a un problème du serveur !

    Juste un truc : Tout marche c'est bien mais quand je vais voir sur Firebug (dans l'onglet "XHR") en étant sur la page d'affichage, il y a plein de lignes qui s'affichent vers le fichier du traitement PHP (dans Réponse : l'identifiant du cours), c'est normal ?!

  13. #33
    Membre confirmé Avatar de freddou17
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2013
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 341
    Points : 566
    Points
    566
    Par défaut
    Cool,

    C'est un peu de la bidouille comme même et il n'y avait pas besoin de faire tout ça mais au moins ce code et tu le comprends
    Pour infos ta fonction go(id_cours_tp) n'a pas besoin de parametre, tu ne l'utilises jamais...

    Pour l'erreur tu renvoie un echo erreur et si xhr.responseText == "erreur" alors...

    Je te laisse mettre le post en résolu et te souhaite bon courage

    ++
    "Aucun de nous ne sait ce que nous savons tous, ensemble."
    Lien vers mon appli Funcash n'hésitez pas à donner votre avis

  14. #34
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    J'ai ajouté la gestion d'erreur, en pièce jointe tu trouveras le ficher. J'ai supprimé le fichier du traitement PHP pour voir si l'alerte s'affichait mais elle ne s'affiche pas.
    J'ai essayé deux codes, ils ne fonctionnent pas (affichage de l'alerte "Problème du serveur").
    Je mettrais le sujet en RESOLU quand on aura géré ça.

  15. #35
    Membre confirmé Avatar de freddou17
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2013
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 341
    Points : 566
    Points
    566
    Par défaut
    Il faut que se soit recuperation_donnees_correction.php qui te renvoie 'erreur'.
    Pour tester il ne faut pas le supprimer (idée bizzar) ... Il faut que tu génére une erreur sql ou autre faire un echo("erreur") dans ce fichier.


    Ou plus simplement....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if (xhr.readyState == 4) {
      if(xhr.status == 200) {
          //ton code existant
      }else{
         //erreur
      }
    }
    "Aucun de nous ne sait ce que nous savons tous, ensemble."
    Lien vers mon appli Funcash n'hésitez pas à donner votre avis

  16. #36
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    En pièce jointe, tu trouveras le fichier modifié. L'alerte "Erreur du serveur." s'affiche tout le temps.

  17. #37
    Membre confirmé Avatar de freddou17
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2013
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 341
    Points : 566
    Points
    566
    Par défaut
    je te laisse relire ton code regarde bien tes if...) ainsi que cette page.
    Tu n'as pas du chercher beaucoup et je ne vais pas tout te coder ...
    "Aucun de nous ne sait ce que nous savons tous, ensemble."
    Lien vers mon appli Funcash n'hésitez pas à donner votre avis

  18. #38
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    En pièce jointe, tu trouveras un nouvel essai du fichier modifié où l'alerte s'affiche tout le temps.

    Je sais ce qu'il faut faire, c'est :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (xhr.readyState == 4 && xhr.status == 200) {
    	// Il y a aucune erreur;
    }
    else
            // Une erreur s'est produite.
    mais je n'arrive pas à le faire dans mon code.

  19. #39
    Membre confirmé Avatar de freddou17
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2013
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 341
    Points : 566
    Points
    566
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if (xhr.readyState == 4) {
      if(xhr.status == 200) {
          //ton code existant
      }else{
         //erreur
      }
    }
    ...
    "Aucun de nous ne sait ce que nous savons tous, ensemble."
    Lien vers mon appli Funcash n'hésitez pas à donner votre avis

  20. #40
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    C'est exactement le code que j'ai essayé ! Seulement avec celui-ci, aucune alerte ne s'affiche !

    En pièce jointe, tu trouveras le fichier modifié.

    Je pense que je ne vais pas traiter les erreurs puisque sans tout fonctionne.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. [AJAX] affichage avec Ajax
    Par Wizard50 dans le forum AJAX
    Réponses: 1
    Dernier message: 29/03/2010, 08h46
  2. [AJAX] Affichage PeriodicalUpdater Ajax
    Par Tsoko dans le forum AJAX
    Réponses: 2
    Dernier message: 21/05/2009, 09h33
  3. [AJAX] Affichage résultat ajax.request quand load page
    Par marcolet.pierre dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/01/2008, 17h27
  4. [AJAX] Affichage avec AJAX
    Par bernylap dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 11/10/2007, 17h55
  5. [AJAX] Affichage en Ajax
    Par RichardP dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 03/05/2007, 17h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo