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] Erreur AJAX et débuggeur en panne


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut [AJAX] Erreur AJAX et débuggeur en panne
    Bonjour,

    J'ai le code suivant qui fonctionne (fichier reponse.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
     
    <?php
    include_once 'Film.class.php';
    $tabFilms = array();
    $tabFilms[] = new Film("1234", "Le beau frère", "Divertissement", "Un beau frère qui ne se trouve pas beau.", 1980);
    $tabFilms[] = new Film("5678", "Le masque de zéro", "Divertissement", "Un zéro qui ne se masque pas", 1982);
     
    $films = new SimpleXMLElement("<films></films>");
     
    foreach ($tabFilms as $f)
    {
        $film = $films->addChild("film");
        $film->addAttribute("reference", $f->getReference());
     
        $film->addChild("titre", $f->getTitre());
        $film->addChild("resume", $f->getResume());
        $film->addChild("annee", $f->getAnnee());
    }    
     
    header('Content-Type: text/xml; charset=utf-8');
    echo $films->asXML();
     
    ?>
    ... et qui crée le fichier XML suivant ( avec la commande : echo $films->asXML("films.xml") ) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <?xml version="1.0"?>
    <films>
    <film reference="1234">
    <titre>Le beau frère</titre>
    <resume>Un beau frère qui ne se trouve pas beau.</resume><annee>1980</annee>
    </film>
    <film reference="5678">
    <titre>Le masque de zéro</titre>
    <resume>Un zéro qui ne se masque pas</resume>
    <annee>1982</annee>
    </film>
    </films>
    ... et le code AJAX pour lire et afficher les films dans le navigateur :

    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    <!DOCTYPE h1 PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    
    <title>Demande de la liste des films</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    <body>
    
        <form id='idForm'
            name='ajax'
            method='post'
            action="http://localhost/ajax/reponse.php">
    
            <p>Pour afficher les films, cliquez ici :</p>
    
            <input type="submit"
                id='boutonSubmit'
                class='bouton'
                title="Demander liste des films" />
    
        </form>
    
        <div id='message'></div>
    
        <!-- JQUERY LIBRARY -->
        <script type='text/javascript' src='jquery.js'></script>
    
    
        <script type='text/javascript'>
        
    $(document).ready(function()
    {
        $('#boutonSubmit').click(function()
        {
            var page = $('#idForm').attr('action');
            var methode = $('#idForm').attr('method');
                
            $.ajax
            ({
                url: page,
                type: methode,
                cache: false,
                async: false,
                timeout: 4000,
                // data: $('#idForm').serialize(),
                dataType: 'xml',
                success: function(xml)
                {
                    $(xml).find('film').each(   
                            function()
                            {
                                var reference = $(this).attr('reference');
                                var titre = $(this).find('titre').text();
                                var resume = $(this).find('resume').text();
                                var annee = $(this).find('annee').text();
    
                                  var info = "==== FILM DE REFERENCE : " + reference + " ====\nTITRE : " + titre + "\nRESUME : " + resume + "\nANNEE : " + annee + "\n\n" + ;
                                afficher(info);
                            });
                },
                error: function (XMLHttRequest, textStatus, errorTrows)
                {
                    afficher("ERREUR");
                }
            });
                
            return false;
        });
    });
    
    function afficher(info) {
        $('#message').empty();
        $('#message').append(info);
    }
     
    </script>
    
    </body>
    </html>
    Quand je lance le script PHP : celui-ci crée bien le fichier XML et le renvoie au navigateur.

    Par contre le navigateur me renvoie ce type d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Erreur d'analyse XML : données incompréhensibles après l'élément de document
    Emplacement : http://localhost/ajax/reponse.php
    Numéro de ligne 2, Colonne 1 :<font size='1'><table class='xdebug-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
    ^
    ... dans le navigateur le debuggeur js ne démarre même pas sauf quand je retire les ligne suivantes du script js (reproduit ci-après OU en gras dans le code au dessus) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    var reference = $(this).attr('reference');
    var titre = $(this).find('titre').text();
    var resume = $(this).find('resume').text();
    var annee = $(this).find('annee').text();
     
    var info = "==== FILM DE REFERENCE : " + reference + " ====\nTITRE : " + titre + "\nRESUME : " + resume + "\nANNEE : " + annee + "\n\n" + ;
    afficher(info);
    Pouvez-vous m'aider pour enfin résoudre ce problème car cela fait bien longtemps que je planche sur celui-ci.

    Merci d'avance.

    A+

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Les accents ne sont pas trop les bienvenues chez les xml .

  3. #3
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    Citation Envoyé par andry.aime Voir le message
    Les accents ne sont pas trop les bienvenues chez les xml .
    Et non, je viens de vérifier et ce n'est pas la cause de l'erreur.

    A+

  4. #4
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    J'avance mais je n'ai pas tout résolu, je ne peux donc pas encore poster la solution.

    Comme il n'y a pas de bouton [DELESTAGE] je passe ce post en [RESOLU].

    Merci pour votre compréhension.

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AJAX] Erreur Ajax avec eval/xhr open
    Par Neliadi dans le forum AJAX
    Réponses: 2
    Dernier message: 01/03/2011, 11h43
  2. [AJAX] Erreur Ajax IE
    Par Sebastien14 dans le forum AJAX
    Réponses: 23
    Dernier message: 30/11/2009, 10h13
  3. [AJAX] Erreur AJAX incompréhensible
    Par obito dans le forum AJAX
    Réponses: 6
    Dernier message: 15/03/2009, 21h16
  4. [AJAX] erreur AJAX, responseText
    Par locs dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 23/07/2007, 19h07
  5. [AJAX] Erreur AJAX !
    Par J0r_x dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/01/2007, 14h20

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