Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Fichier xml ecrit par plusieurs pages php ?

9 réponses
Avatar
paul
Bonjour,

je dois constituer un menu "dynamique" xml.
Je sais comment écrire un fichier à partir d'une page php (fopen fputs
fclose...).
Par contre ce que je ne sais pas c'est comment n'en écrire qu'une partie
car plusieurs pages php doivent constituer ce même fichier xml...

Euh je m'explique :
que le fichier galerie.php ne modifie que la partie Galerie du fichier
menu.xml
Et que le fichier news/php ne modifie que la partie News du même fichier
xml

Je ne sais pas si je suis plus clair....

9 réponses

Avatar
sylsau
On 12 mar, 15:46, paul wrote:
Bonjour,

je dois constituer un menu "dynamique" xml.
Je sais comment écrire un fichier à partir d'une page php (fopen fputs
fclose...).
Par contre ce que je ne sais pas c'est comment n'en écrire qu'une partie
car plusieurs pages php doivent constituer ce même fichier xml...

Euh je m'explique :
que le fichier galerie.php ne modifie que la partie Galerie du fichier
menu.xml
Et que le fichier news/php ne modifie que la partie News du même fichier
xml

Je ne sais pas si je suis plus clair....


Si le fichier sur lequel tu écris est un fichier XML cela ne pose pas
de problèmes.
Dans ton fichier XML tu définis des balises correspondants aux
différentes catégories (galerie, news, ...) par exemple.

Lorsque tu ouvres le fichier XML dans un des fichiers PHP, tu
récupères l'arbre XML du fichier et ensuite tu vas pouvoir t'occuper
et modifier que la partie qui t'intéresse en récupérant que le contenu
de la balise galerie par exemple depuis l'arbre XML crée.

Une fois ton arbre XML modifié il te suffit de le réécrire dans le
fichier XML depuis ta page PHP et le tour est joué.

Avatar
Thief13
Voici par ordre de préférence (la mienne bien sure) les diférentes
méthodes pour manipuler du XML. (pour sax par contre, il n'y a pas moyen
d'écrire)

simplexml :
http://fr.php.net/manual/fr/ref.simplexml.php

DOM :
http://fr.php.net/manual/fr/ref.dom.php

SAX :
http://fr.php.net/manual/fr/ref.xml.php
Avatar
M
Bonjour,

Piste : va faire un tour du côté des fonctions DOM.
http://fr2.php.net/manual/fr/ref.dom.php

Questions :
- comment as-tu prévu de gérer les accès concurrentiels lorsque
galerie.php et new.php seront exécutés simultanément ?
- pourquoi ne pas gérer deux fichiers XML différents ? La génération
du menu pourrait se faire en lisant plusieurs fichiers...

M

Bonjour,

je dois constituer un menu "dynamique" xml.
Je sais comment écrire un fichier à partir d'une page php (fopen fputs
fclose...).
Par contre ce que je ne sais pas c'est comment n'en écrire qu'une partie
car plusieurs pages php doivent constituer ce même fichier xml...

Euh je m'explique :
que le fichier galerie.php ne modifie que la partie Galerie du fichier
menu.xml
Et que le fichier news/php ne modifie que la partie News du même fichier
xml

Je ne sais pas si je suis plus clair....


Avatar
Olivier Miakinen

Questions :
- comment as-tu prévu de gérer les accès concurrentiels lorsque
galerie.php et new.php seront exécutés simultanément ?


De la même manière, je suppose, qu'il gèrera les accès concurrentiels
lorsque deux instances de galerie.php seront exécutées simultanément
(idem pour deux instances de new.php).

- pourquoi ne pas gérer deux fichiers XML différents ? La génération
du menu pourrait se faire en lisant plusieurs fichiers...


Cela ne supprimera pas le besoin de gérer les accès concurrentiels.

Bonjour,

[ copie intégrale de l'article précédent ]



Comment bien répondre à un article sur Usenet :
http://www.faqs.org/faqs/fr/usenet/repondre-sur-usenet/


Avatar
paul
In article ,
"sylsau" wrote:


Si le fichier sur lequel tu écris est un fichier XML cela ne pose pas
de problèmes.
Dans ton fichier XML tu définis des balises correspondants aux
différentes catégories (galerie, news, ...) par exemple.

Lorsque tu ouvres le fichier XML dans un des fichiers PHP, tu
récupères l'arbre XML du fichier et ensuite tu vas pouvoir t'occuper
et modifier que la partie qui t'intéresse en récupérant que le contenu
de la balise galerie par exemple depuis l'arbre XML crée.

Une fois ton arbre XML modifié il te suffit de le réécrire dans le
fichier XML depuis ta page PHP et le tour est joué.


Oui c'est bien ce que je pensais faire...
Mais c'est le comment faire qu'il me manque !
;-)


Comment ne récupérer et n'écrire "que" ce qui doit l'être ?


Pour galeries.php la partie à modifier est située entre la chaîne :
<TEXT>Galeries</TEXT>
et la prochaine occurence de :
</PARENT>

Même principe pour news.php, entre la chaîne :
<TEXT>News</TEXT>
et la prochaine occurence de :
</PARENT>


Merci
Paul

Avatar
Thief13
Lit les docs de dom et de simplexml, tu y trouvera la réponse. RTFM XD
Avatar
paul
In article <45f56cee$0$16864$, M wrote:

- pourquoi ne pas gérer deux fichiers XML différents ? La génération
du menu pourrait se faire en lisant plusieurs fichiers...


Hum... mais oui, tu as raison !
Il faudrait mettre la même fonction dans chacune des 2 pages php. Elle
concatènera menu_a.xml avec menu_b.xml pour générer menu.xml

Comment faire ça simplement ?

Merci
Paul

Avatar
Christophe Meresse
On 14 mar, 12:39, paul wrote:
In article <45f56cee$0$16864$, M wrote:
- pourquoi ne pas gérer deux fichiers XML différents ? La génération
du menu pourrait se faire en lisant plusieurs fichiers...


Hum... mais oui, tu as raison !
Il faudrait mettre la même fonction dans chacune des 2 pages php. Elle
concatènera menu_a.xml avec menu_b.xml pour générer menu.xml


Même pas besoin de generer ce fichier menu.xml. Les fichiers
menu_a.xml et menu_b.xml doivent être suffisant pour le script qui
affiche le menu...

Christophe


Avatar
Mihamina (R12y) Rakotomandimby
paul wrote:

Il faudrait mettre la même fonction dans chacune des 2 pages php. Elle
concatènera menu_a.xml avec menu_b.xml pour générer menu.xml
Comment faire ça simplement ?


En mettant plutot la fonction en charge de concaténer en dehors des fichiers
à concaténer. Ou bien?