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

Langage PHP Discussion :

Créer un fichier xml dynamique


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Par défaut Créer un fichier xml dynamique
    Bonsoir à tous,
    Je souhaite créer un fichier xml et le remplir avec les données provenant d'une bdd. La page qui déclenche la création et le remplissage du xml reçoit en méthode GET un identifiant qui permet le remplissage du fichier xml. Ce fichier xml sera ultérieurement utilisé lors de l'affiche du html.

    Code : Partie 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
     
    if(!empty($_GET['id'])){
      //Création du fichier XML vide sur le serveur
    	//Exemple ./data.xml
     
      $connect = mysql_connect($host,$user,$pswd);
      mysql_select_db($bdd);
      $sql = 'SELECT titre, fichier FROM titres WHERE auteur='.$_GET['id'];
      $rst = mysql_query($sql);
      while($row = mysql_fetch_array($rst)){
      //Remplissage du fichier XML, ecriture dans data.xml
      }
     
    }
    Code : Partie HTML (Utilisation du fichier XML data.xml)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ...
    <param name="flashvars" value="showtime=true&autoreplay=true&xml=data.xml" />
    ...
    Comment le faire?

    Merci d'avance...

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 348
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 348
    Billets dans le blog
    17
    Par défaut
    Salut !
    Où se situe ton problème ?

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Par défaut
    Citation Envoyé par Séb. Voir le message
    Salut !
    Où se situe ton problème ?
    Création du fichier xml de ce genre avec la page php et son remplissage avec les données provenant de la bdd
    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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <playlist version="1" xmlns="http://xspf.org/ns/0/">
        <title>Ounage Playlist</title>
        <creator>Dew</creator>
        <link>http://www.blup.fr/</link>
        <info>The Best Playlist for Testing</info>
        <image>covers/tracklist.jpg</image>
     
        <trackList>
     
            <track>
              <location>mp3/cesaria.mp3</location>
              <creator>Cesaria Evora</creator>
              <album>Voz d'Amor (Cesaria Evora)</album>
              <title>Saia Travada</title>
              <annotation></annotation>
              <duration></duration>
              <image>covers/cesaria.jpg</image>
              <info></info>
              <link>http://fr.wikipedia.org/wiki/Cesaria_Evora</link>
            </track>
     
            <track>
              <location>mp3/katusha.mp3</location>
              <creator>Russian Red Army Choir</creator>
              <album>Best Of</album>
              <title>Katusha</title>
              <annotation></annotation>
              <duration></duration>
              <image>covers/redarmy.jpg</image>
              <info></info>
              <link>http://www.blup.fr/</link>
            </track>
     
        </trackList>
    </playlist>
    Merci d'avance...

  4. #4
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 348
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 348
    Billets dans le blog
    17
    Par défaut
    Tu peux faire un script dans le genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $xml = '<?xml version="1.0" encoding="UTF-8"?>' ;
    $xml .= '<playlist version="1" xmlns="http://xspf.org/ns/0/">' ;
    $xml .= '...' ;
    $xml .= '<trackList>' ;
     
    while($row = mysql_fetch_array($rst)){
        $xml .= '<track>...</track>' ;
    }
     
    $xml .= '</trackList></playlist>' ;
    file_put_contents('data.xml', $xml) ;

  5. #5
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Par défaut
    Citation Envoyé par Séb. Voir le message
    Tu peux faire un script dans le genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $xml = '<?xml version="1.0" encoding="UTF-8"?>' ;
    $xml .= '<playlist version="1" xmlns="http://xspf.org/ns/0/">' ;
    $xml .= '...' ;
    $xml .= '<trackList>' ;
     
    while($row = mysql_fetch_array($rst)){
        $xml .= '<track>...</track>' ;
    }
     
    $xml .= '</trackList></playlist>' ;
    file_put_contents('data.xml', $xml) ;
    Merci déjà pour ce début de solution.
    Le but de mon script est de créer et remplir ce fichier data.xml pour chaque $_GET['id'], en fait pour chaque appel de la page auteur.php?id=x, x étant l'id de chaque auteur.
    Si mon algo est bon, ce fichier devrait être détruit lorsqu'on sort de cette page, car lorsqu'on change d'auteur le contenu de data.xml devrait être mis à jour en fonction de l'id de l'auteur.
    Comment vider data.xml lorsqu'on change d'identifiant?
    Voir aussi le cas où plusieurs personnes visitent le site. Chacun remplissant le data.xml en fonction de l'auteur qu'il souhaite écouter les mp3. Comment gérer les data.xml en fonction des visiteurs?

    merci d'avance...

  6. #6
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 348
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 348
    Billets dans le blog
    17
    Par défaut
    Si mon algo est bon, ce fichier devrait être détruit lorsqu'on sort de cette page
    Pour le moment, de ce que j'ai vu, l'ancien data.xml est détruit lorsque le nouveau est créé (écrasement).

    Comment vider data.xml lorsqu’on change d'identifiant?
    Pour le moment c'est file_put_contents( ) qui s'en charge.

    Voir aussi le cas où plusieurs personnes visitent le site. Chacun remplissant le data.xml en fonction de l'auteur qu'il souhaite écouter les mp3. Comment gérer les data.xml en fonction des visiteurs?
    Tu peux donner un autre nom que data.xml. Par exemple l'utilisateur n° 234 aurait un fichier playlist-234.xml, ainsi pas de conflit et chacun peut conserver sa playlist jusqu'à ce qu'il en définisse une nouvelle qui écrasera l'ancienne (file_put_contents( )).

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

Discussions similaires

  1. [DOM] Créer un fichier XML indenté
    Par phoebe dans le forum Format d'échange (XML, JSON...)
    Réponses: 19
    Dernier message: 06/10/2009, 23h31
  2. créer des Fichiers XML dynamiquement
    Par bhahmed dans le forum C++Builder
    Réponses: 2
    Dernier message: 01/09/2006, 17h54
  3. [C#] [XML] Comment créer un fichier XML
    Par pc152 dans le forum Windows Forms
    Réponses: 12
    Dernier message: 28/09/2004, 13h41
  4. [C#] Créer un fichier Xml à partir d'un objet
    Par Troopers dans le forum Windows Forms
    Réponses: 3
    Dernier message: 03/09/2004, 13h23
  5. [DOM] est ce qu'on peut créer un fichier xml en java ?
    Par miloud dans le forum Format d'échange (XML, JSON...)
    Réponses: 9
    Dernier message: 21/01/2004, 10h40

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