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

Bibliothèques et frameworks PHP Discussion :

[DOM XML] Insertion données dans fichier XML avec PHP pour Flash ?


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Par défaut [DOM XML] Insertion données dans fichier XML avec PHP pour Flash ?
    Bonjour,

    Avec l'application FLASH que j'essaye de terminer, j'utilise un fichier XML.

    Celui a la structure suivante :

    Code XML : 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
    <?xml version="1.0" encoding="UTF-8"?> 
    <racine> 
     <dj> 
      <pseudo>aaaa</pseudo> 
      <pays>Belgium</pays> 
      <ville>Verviers</ville> 
      <genre>House</genre>       
      <prenom>aaaa</prenom> 
      <nom>aaaa</nom> 
      <daten>01/01/1900</daten> 
      <bio>C'est à l'age de 16 ans qu'il commence à ...</bio>   
      <email>aaa@aaa.aaa</email> 
      <web>www.aaa.aaa</web> 
      <photo>photosdj/01.jpg</photo> 
     </dj>
     
     <dj> 
      <pseudo>bbbb</pseudo> 
      <pays>Belgium</pays> 
      <ville>Huy</ville> 
      <genre>Tech</genre>       
      <prenom>bbbb</prenom> 
      <nom>bbbb</nom> 
      <daten>01/01/1900</daten> 
      <bio>Jouant de la trompette lol ...</bio>   
      <email>bbbb@bbbb.bbbb</email> 
      <web>www.bbbb.bbbb</web> 
      <photo>photosdj/02.jpg</photo> 
     </dj>
     
    </racine>

    Dans FLASH, j'ai fais un formulaire qui permet de saisir toutes les données nécéssaires à inscrire dans le fichier XML.
    Lorsque je fais "Envoyer formulaire", il l'envoie par la méthode POST à un fichier PHP.
    Ce fichier PHP récupère les données et ensuite inscrits dans le fichier XML à la suite des autres enregistrements.

    Le problème, c'est qu'il y a la balise </racine> à la fin du fichier XML.
    Avec mon fichier PHP, il m'ajoute les enregistrement à la fin du fichier XML.

    J'aimerais juste qu'il me les ajoute à la fin du fichier, mais JUSTE AVANT la balise </racine> de fin de fichier XML.

    Auriez-vous une idée ?

    Voici mon fichier PHP :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?
    // Récupération des données via POST
    $a_renvoyer=$_POST["var_envoi"];
    $a_renvoyer=stripslashes($a_renvoyer); 
    str_replace("\r\n","&lt;br&gt;",$a_renvoyer);
    // &lt;br&gt; ---> <br>
    // Enregistrer les donnees
    $fichier = 'dj.xml';
    $fp=fopen($fichier,"a+");
    fwrite($fp,"$a_renvoyer \n");
    fclose($fp);
    echo($a_renvoyer);
    ?>
    Auriez-vous une idée ?

    Merciiii

  2. #2
    Membre éclairé
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Par défaut
    J'ai essayé en ajoutant ceci à mon fichier PHP :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $position=-3;
    fseek($fp, $position, SEEK_END);
    Mais il m'inscrit mes données à la fin du fichier ...

    Une idée please ?

  3. #3
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    Citation Envoyé par ExSter
    J'ai essayé en ajoutant ceci à mon fichier PHP :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $position=-3;
    fseek($fp, $position, SEEK_END);
    Mais il m'inscrit mes données à la fin du fichier ...

    Une idée please ?
    Utilise les fonctions DOM (PHP5) ou DOMXML (PHP4)

  4. #4
    Membre éclairé
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Par défaut
    Citation Envoyé par Eusebius
    Utilise les fonctions DOM (PHP5) ou DOMXML (PHP4)
    J'ai réussi ... J'ai juste changé mon type d'ouverture de fichier.

    J'ai mis mon fichier en ouverture R+ (au lieu de A+) et je le positionné mon Seek sur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $position=-13;
    fseek($fp, $position, SEEK_END);
    Hop, et il me place correctement, mais le soucis c'est qu'il ECRASE la balise </racine> de fin, donc je dois l'ajouter à la fin de ma donnée à insérer.

    Bref, je vais essayer avec ce que tu m'as conseillé de faire

    merci

  5. #5
    Rédacteur

    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 695
    Par défaut
    hummmm
    utiliser un XML directement en fichier texte n'est sans doute pas judicieux, je rejoins
    Utilise les fonctions DOM (PHP5) ou DOMXML (PHP4)
    Articles sur developpez.com
    - Gestion des exceptions avec PHP5
    - Chiffrement et hash en PHP contre l'attaque Man in the middle
    - Aedituus - Espace membre sécurisé en PHP5

  6. #6
    Membre éclairé
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Par défaut
    Citation Envoyé par wamania
    hummmm
    utiliser un XML directement en fichier texte n'est sans doute pas judicieux, je rejoins
    J'ai recherché comment je pouvais faire avec le DOM mais ça m'a l'air hyper complexe ...

    Ici, dans mon fichier PHP j'ai juste modifié 2 lignes, le seek set et ça fonctionne.

    Par contre si quelqu'un connait directement la manière de faire, je tenterai ...

  7. #7
    Membre émérite Avatar de Yobs
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    675
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 675
    Par défaut
    J'ajoute que tu peux trouver de l'aide ici: http://fr.php.net/manual/fr/ref.dom.php

Discussions similaires

  1. [XML] php insertion données dans fichier xml
    Par math11 dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 11/03/2011, 12h20
  2. [DOM] Chargement de données dans fichier XML ?
    Par titoc dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 01/06/2008, 12h31
  3. Inserer des données dans fichier Xml
    Par Logarythme dans le forum InfoPath
    Réponses: 3
    Dernier message: 28/02/2008, 08h35
  4. [DOM] Encodage UTF-8 dans fichier XML et PHP
    Par norkius dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 03/01/2007, 15h44

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