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

JavaScript Discussion :

[AJAX] ajax ecrire dans du xml


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 62
    Points : 40
    Points
    40
    Par défaut [AJAX] ajax ecrire dans du xml
    Bonjour,
    j'ai un fichier xml qui contient des noeud <contact> ,enveleppés dans un seul noeud racine <contacts>
    et j'ai une page qui affiche cette liste.
    j'ai mis en place un petit champ <input type="text">
    avec un petit bouton ,ce petit formulaire me permet
    d'ajouter un noeud dans le fichier xml.
    le probleme,je veux savoir s'il y a moyen de me passer
    d'un formulaire (juste recuperer la valeur de l input et appeler a Onclick
    la methode ajax correspondante)
    et si un formulaire est necessaire , comment je pourrais envoyer les données
    vers ma methode js.
    j'ai vu des tutos, en general ils mettent xhr.open("post","xxxx.php",true)
    mais moi je n'ai pas besoin d'un fichier php pour traiter ma requete
    Ajax peut la modifier directement
    j'ai deja essayé ceci mais ca ne marche pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <form name="add_con" id="add_con" action="" method="GET">
          <input id="user" name="user" type="text" size="15">
          <input type="submit" value="+" OnClick="addContact()">
          </form>
    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
    function addContact()
    {
        var xhr=null;
     
        if (window.XMLHttpRequest) { 
            xhr = new XMLHttpRequest();
        }
        else if (window.ActiveXObject) 
        {
            xhr = new ActiveXObject("Microsoft.XMLHTTP");
        }
     
        var user = document.getElementById("user").value;
     
        //on définit l'appel de la fonction au retour serveur
        xhr.onreadystatechange = function() { add_c(xhr,user); };
     
        //on appelle le fichier xml
        xhr.open("GET", "abcd.xml", true);
        xhr.send(null);
    }
     
    function add_c(xhr,user)
    {
    if (xhr.readyState==4) 
        {
         var docXML= xhr.responseXML;
         var items = docXML.getElementsByTagName("contacts") ;
         newel=docXML.createElement('contact');
         newtext=xmlDoc.createTextNode(user);
         newel.setAttribute("status","0");
         newel.appendChild(newtext);
         items[0].appendChild(newel);
     
        }
    }
    j'ai deja testé avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        xhr.open("POST", "abcd.xml", true);
    xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        xhr.send("user="+user);
    mais ca n'a rien changé.

    Merci si qqn peut m'aider

  2. #2
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    La modification du flux XML n'est effective que chez le client, pas sur le serveur...

    Tu t'imagines le truc si le client pouvait modifier les fichiers présents sur le serveur ???

    Non, faut passer par un language serveur
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

Discussions similaires

  1. Lire et ecrire dans un xml
    Par Clydopathe dans le forum C#
    Réponses: 6
    Dernier message: 16/12/2008, 11h15
  2. [DOM] Ecrire dans mon XML avec du PHP
    Par PurpleDoll dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 15/10/2007, 14h06
  3. [AJAX] Récupérer infos dans fichier XML
    Par Dia_FR dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 02/12/2006, 15h34
  4. écrire dans un xml avant d'envoyer au serveur
    Par eloifi dans le forum Struts 1
    Réponses: 5
    Dernier message: 23/10/2006, 17h16
  5. [AJAX] ajax et le # dans la barre de titre
    Par speedev dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 18/05/2006, 15h21

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