Voici ci-dessous le code xml qui me pose des soucis.
Je parviens bien à remonter les éléments contenus dans "product" mais je bloque totalement sur la balise properties, je dois récupérer certaines valeurs inclus dans property, par exemple il me faut remonter la valeur de la property "validToDate"
Voici mon code PHP actuel :
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
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96<?xml version="1.0" encoding="UTF-8"?> -<products> -<product ID="991593"> <name>Réduction de 5% sur tous les hôtel à Paris</name> <price currency="EUR">0.00</price> <URL></URL> -<images> <image></image> </images> -<description> -<![CDATA[5% de réduction sur tous les hôtel à Paris]]> </description> -<categories> <category path="Voyages et vacances">Voyages et vacances</category> </categories> -<properties> -<property name="creationDate"> <value>2016-10-12 12:34:18</value> </property> -<property name="campaignName"> <value>Exemple.com</value> </property> -<property name="validFromDate"> <value>2016-10-12</value> </property> -<property name="validToDate"> <value>2017-09-30</value> </property> -<property name="discountFixed"> <value>0.00</value> </property> -<property name="discountVariable"> <value>5.00</value> </property> -<property name="conditions"> <value>Les bons de réduction ne sont pas valables pour les promotions "Réserve immédiatement et paie à lhôtel". Donc pour pouvoir les utiliser, vous devez choisir un hôtel qui nadhère pas à cette convention.</value> </property> -<property name="voucherCode"> <value>JAimeParis</value> </property> </properties> <variations/> </product>
Si quelqu'un voit comment gérer celà sachant que j'utilise en PHP DomDocument
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 $document_xml = new DomDocument(); // Instanciation de la classe DomDocument : création d'un nouvel objet $document_xml->load('http://exemple.net/?aid=270461&encoding=utf-8&type=xml-v2&fid=-6&filter_html=1&categoryType=2&additionalType=2'); // Chargement du xml $elements = $document_xml->getElementsByTagName('product'); foreach($elements as $codep) { $idcamp=$codep->getAttribute("ID"); $idoffer=0; $query="select * from offers where id_plateforme=10 and id_interne=".$idcamp; $result = mysql_query($query, $connection) or die($query); $affected_rows=mysql_num_rows($result); if ($affected_rows==1) { $data=mysql_fetch_array($result); $idoffer=$data['id']; } $sdescription=$codep->getElementsByTagName("description"); $description=$sdescription->item(0)->nodeValue; //mon souci commence là :( $properties = $document_xml->getElementsByTagName('properties'); $codes = $codep->getElementsByTagName("voucherCode"); $code = $codes->item(0)->nodeValue; $sdatedebut=$codep->getElementsByTagName("validFromDate"); $datedebut=substr($sdatedebut->item(0)->nodeValue,0,19); $sdatefin=$codep->getElementsByTagName("validToDate"); $datefin=substr($sdatefin->item(0)->nodeValue,0,19); }
Merci par avance
Partager