Galactic Civilizations 3
Ajax et Php avec fichier XML

Ajax et Php avec fichier XML

Catégorie: Javascript.
Posté par le 22/02/2012.
Dernière mise à jour le 25/12/2013.

<<Tutoriel précédent    Tutoriel suivant>>

Description

Ce tutoriel vous expliquera comment utiliser l’ajax afin de récupérer lorsque vous le désirez les données envoyées par votre script PHP sous forme d’un fichier XML.

Introduction

Ce tutoriel peut être réalisé à l'aide d'un simple éditeur de texte. Il nécessite des connaissances de base en html, JavaScriptPHP et XML.

Lors de ce tutoriel, nous allons modifier les fichiers créés lors du tutoriel précédent. Les fichiers en question sont les suivants :

  • ajax.js
  • serveur.php

L’XML envoyé par le serveur, sera le suivant :

<?xml version="1.0" encoding="ISO-8859-1"?>
<series>
   <val1>Valeur 1</val1>
   <val2>Valeur 2</val2>
</series>

Script JavaScript

Comme nous allons récupérer les données en XML, nous allons utiliser l’attribut responseXml de l’objet  XMLHttpRequest au lieu de l’attribut responseText. Pour ce faire, modifiez la fonction recupererDonnees du fichier Ajax.js de la sorte :

Ajax.js

...
if(req.status == 200){
    /* On traite la réponse */
    traiterXML(req.responseXML);
}else{
...

Comme vous pouvez le constater, une nouvelle fonction fait son apparition. Cette fonction s’appelle traiterXML et comme son nom l’indique, elle permet de traiter le fichier XML envoyé par le serveur à l’aide des méthodes DOM.

Nous pouvons donc maintenant rajouter la fonction traiterXML :

Ajax.js

function traiterXML(donnees){
  var traitement;
  traitement = donnees.getElementsByTagName('val1')[0].firstChild.data;
  traitement += "\n"+donnees.getElementsByTagName('val2')[0].firstChild.data;
  alert(traitement);
}

Dans ce tutoriel, je vous explique comment récupérer la réponse du serveur en format xml, mais on peut également utiliser l'Ajax pour récupérer la réponse sous forme d'un fichier texte.

Script PHP

Nous allons maintenant nous occuper du script PHP coté serveur.  Celui-ci construira l’XML décrit plus haut et l’enverra au client. Pour ce faire, remplacer le contenu du fichier par celui-ci-dessous :

serveur.php

<?php
$xml = '<?xml version="1.0" encoding="ISO-8859-1"?>';
$xml .= '<series>';
$xml .= '<val1>Valeur 1</val1>';
$xml .= '<val2>Valeur 2</val2>';
$xml .= '</series>';

/* On modifie l'en-tete afin que le client
 voit que c'est un fichier xml qui est envoyé. */

header('Content-type: text/xml');
echo $xml;
?>

Tests

Le tutoriel arrive maintenant à sa fin, vous pouvez tester le fonctionnement du bouton « ajax » en cliquant dessus. Vous devriez voir apparaitre le message : « valeur1 valeur2 ».

AJAX XML

Tu as aimé ce tutoriel ?
Aide nous à améliorer le site ! Deviens partenaire officiel ou suis nous sur facebook !

<<Tutoriel précédent    Tutoriel suivant>>

Commentaires[0]

Tu as aimé ce tutoriel ? Alors partage-le avec tes amis !
Partager sur Facebook Partager sur Twitter Partager sur Myspace Partager sur Stumbleupon Soumettre sur Reddit Partager sur Digg Ajouter à vos favoris Technorati Ajouter à vos favoris Live Ajouter à vos favoris Google Ajouter sur vos favoris Yahoo Voir le flux rss

Mots Clés: ajax html JavaScript php web XML XMLHttpRequest

Veve :
(11/04/2013 - 17:19:44)
il faut juste mettre "sudo" à la place de "su" pour exécuter la commande en root

Veve :
(11/04/2013 - 17:18:56)
Salut tu peux aller lire ce tutoriel: http://www.tutorielsenfolie.com/tutoriels-63-installation-configuration-opennebula.html Il fonctionne aussi sous ubuntu

safa.souissi4 :
(10/04/2013 - 20:58:13)
s'il vous plait c urgent :(

safa.souissi4 :
(10/04/2013 - 20:56:25)
bonsoir,je cherche un tutos pour installer opennebula.org sous ubuntu 12.

Veve :
(18/03/2013 - 20:07:49)
oui, j'essaye de voir d'ou viens le problème.

sonde :
(18/03/2013 - 13:29:57)
re merci (j apprend un peu plus) je crois que j ai trouver pourquoi je peu pas poster si il y a ligne code impossible de poster lol

Veve :
(17/03/2013 - 21:34:49)
Salut, j'espère que ça t'a aidé.

sonde :
(17/03/2013 - 09:59:02)
pour ton aide

sonde :
(17/03/2013 - 09:57:36)
slt Veve impossible de laisser com

sonde :
(17/03/2013 - 09:56:55)
??

Demi-dieu :
(15/03/2013 - 18:41:13)
salut ^^

sonde :
(13/03/2013 - 14:49:35)
un petit coucou

Tanamoureuse :
(29/09/2011 - 06:11:08)
Je t'aime

Faire un don

Ma Publicité ici


Faire un don