bonjour,
dans un premier temps, je présente très rapidement, je suis plutot développeur PHP sans avoir la prétention d'être un bon DEV (je suis issu d'une formation réseau...)
Je n'ai fait que très peu de javascript/ajax et jquery et là je suis devant un sacré souci professionnel que j'ai bcp de mal à traiter (déja une journée complete de perdue)
j'ai besoin d'afficher une partie d'un doc XML document XML selon un critere
Une toute petite partie de mon XML se présente ainsi
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 <?xml version="1.0" encoding="utf-8"?> <unmateriel> <contexte> <CODE1 clair="###">12345874</CODE1> <CODE2 precision="Pour ce NNO, la couleur est GRISE">145871245</CODE2> <LIBELLE>donnee</LIBELLE> <synonyme description="fegerg">donnee</synonyme> <materiellie description="###">###</materiellie> </contexte> <contexte> <CODE1 clair="###">12345874</CODE1> <CODE2 precision="Pour ce CODE1, la couleur est GRISE">145871245</CODE2> <LIBELLE>donnee</LIBELLE> <synonyme description="fegerg">donnee</synonyme> <materiellie description="###">###</materiellie> </contexte> <documents-four> <fichier typefonctionnel="T1" titre="2. titre 2" meta-auteur="L1" meta-poids="" meta-date="14-09-2014" date-debut="15-08-2013" url="http://blabla.com/ficGU1.pdf">Ce fichier 1</fichier> <fichier typefonctionnel="GU" titre="2. titre 1" meta-auteur="LH" meta-poids="" meta-date="14-09-2014" date-debut="15-08-2013" url="http://blabla.com/ficGU2.pdf">Ce fichier 2</fichier> <fichier typefonctionnel="MM" titre="1. GU gj,dhjf" meta-auteur="IEF Mamou OGAR" meta-poids="" meta-date="15-03-2025" date-debut="15-08-2024" date-fin="19-08-1987" ref-doc="98054-8"/> <fichier typefonctionnel="EMPLOI" titre="EMPLOI" meta-auteur="" meta-poids="" meta-date="00-01-1900">Bla bla bla</fichier> </documents-four> <documents-statiques> <fichier typefonctionnel="D" titre="MonTitre" meta-auteur="MonAuteur" meta-poids="20 Ko" meta-date="15-05-2014" date-debut="14-02-2030" ref-doc="DSA 1254-9" chemin-nas="\\monNAS\Seb\Marcek\Camion.pdf" url="https://eklad.tld/Debra_McLeod.pdf">Ce document recense </fichier> <fichier typefonctionnel="TIT" titre="MonTCT" meta-auteur="MonAuteur" meta-poids="20 Ko" meta-date="15-05-2014" date-debut="15-05-2014" date-fin="14-02-2030" ref-doc="BAC 1254-9" chemin-nas="\\desoutien.pdf">Ce document recense </fichier> <fichier typefonctionnel="Homol" titre="Homol1" meta-auteur="MOI" meta-poids="20 Ko" meta-date="25-08-2025" date-debut="01-01-2025" date-fin="31-12-2027" ref-doc="AA">blad</fichier> </documents-statiques> <notes> <note>Note 1</note> </notes> </unmateriel> <unmateriel> <contexte> <un-contexte> <CODE1 clair="###">123874</CODE1> <CODE2 precision="Pour ce NRO, la couleur est verte">145871245</CODE2> <LIBELLE>donnee</LIBELLE> <synonyme description="fegerg">donnee</synonyme> <materiellie description="###">###</materiellie> <un-contexte> <un-contexte> <CODE1 clair="###">1238fg74</CODE1> <CODE2 precision="Pour ce NRO, la couleur est verte">145871245</CODE2> <LIBELLE>donnee</LIBELLE> <synonyme description="fegerg">donnee</synonyme> <materiellie description="###">###</materiellie> <un-contexte> </contexte> <documents-four> <fichier typefonctionnel="T1" titre="2. titre 2" meta-auteur="L1" meta-poids="" meta-date="14-09-2014" date-debut="15-08-2013" url="http://blabla.com/ficGU1.pdf">Ce fichier 1</fichier> <fichier typefonctionnel="GU" titre="2. titre 1" meta-auteur="LH" meta-poids="" meta-date="14-09-2014" date-debut="15-08-2013" url="http://blabla.com/ficGU2.pdf">Ce fichier 2</fichier> <fichier typefonctionnel="MMMA" titre="1. GU gj,dhjf" meta-auteur="IEF Mamou OGAR" meta-poids="" meta-date="15-03-2025" date-debut="15-08-2024" date-fin="19-08-1987" ref-doc="98054-8"/> <fichier typefonctionnel="EMPLOI" titre="EMPLOI" meta-auteur="" meta-poids="" meta-date="00-01-1900">Bla bla bla</fichier> </documents-four> <documents-statiques> <fichier typefonctionnel="D" titre="MonTitre" meta-auteur="MonAuteur" meta-poids="20 Ko" meta-date="15-05-2014" date-debut="14-02-2030" ref-doc="DSA 1254-9" chemin-nas="\\monNAS\Seb\Marcek\Camion.pdf" url="https://eklad.tld/Debra_McLeod.pdf">Ce document recense </fichier> <fichier typefonctionnel="TIT" titre="MonTCT" meta-auteur="MonAuteur" meta-poids="20 Ko" meta-date="15-05-2014" date-debut="15-05-2014" date-fin="14-02-2030" ref-doc="BAC 1254-9" chemin-nas="\\desoutien.pdf">Ce document recense </fichier> <fichier typefonctionnel="Homol" titre="Homol1" meta-auteur="MOI" meta-poids="20 Ko" meta-date="25-08-2025" date-debut="01-01-2025" date-fin="31-12-2027" ref-doc="AA">blad</fichier> </documents-statiques> <notes> <note>Note 1</note> </notes> </unmateriel>
je ne dispose plus de serveur web (php), c'est pour cette raison que je m'oriente vers ajax/javascript (je maitrise aussi le parc de navigateur web puisque c'est en intra : Firefox)
en jquery, j'ai vu qu'on pouvait sélectionner des noeuds d'un XML
J'ai cherché toute la journée à écrire mon code, mais je ne trouve aucune doc claire et explicite avec un code en regard. je n'ose même pas publier mes tests, j'ai honte ! Encore que ... interrogerAJAX.html
Mon XML n'est pas figé, je peux modifier pour le moment, je n'en suis qu'a l'étape d'analyse et je peux modifier tout ce que je veux (comme rajouter un id dans <un materiel>
si on analyse un peu, j'ai deux (ou trois ca dépend d'où on part) niveaux (en y'en aura pas plus car cette description colle à une norme interne qui n'évoluera pas sur ce sujet)
Du code j'en ai produit je cherche mais je pige pas, je ne sais pas comment faire ceci :
Comment puis-je lire mon XML (en ajax donc) et récupérer ces "sens de lecture" (qui finalement sont tous les même, selon le chemin a parcourir :
- Liste des élément de des contextes pou UN materiel
- Liste de tous les élément de des contextes pour TOUs les materiels
En effet, comme on peu le constater, la première requête ne bosse que sur le sous-ensemble unmateriel, alors que la deuxieme bosse sur tous le fichier. Ainsi, en me débloquant, je pourrais adapter vos deux réponses à toutes les situation.
Je bosse généralement avec des XPath, si des bibliothèques pour arriver à mon besoin existent (j'ai vu JQuery pouvait aider) , pas de soucis
Si quelqu'un pouvais me lancer sur la lecture de l'integralité d'un bloc UN MATERIEL et l'un de ses sous bloc, derriere je coderai le rester
Je compte détacher mes blocs XML dans un but de modulaisattion et les utiliser avec des xi:include, mais si c'est pas une bonne idée, je suis près à changer pour que ca marche en JS.
Avec tous mes sincères remerciements par avance
Partager