Bonjour à ,tous,
j'essaie de faire un import d'un fichier Xml, cela fonctionne en partie.
Mon problème est dans la récupération des images.
sur le premier bien cela fonctionne mais a partir du second et suivant cela m'affiche les images en double.
je vous met le code :
le xml (raccourci):
le php :
le resultat :
Je pense que c'est une histoire de boucle mais je ne vois pas comment faire.
Merci d'avance de votre aide.
Cdt
Modifié par spawns (25 Nov 2021 - 15:06)
j'essaie de faire un import d'un fichier Xml, cela fonctionne en partie.
Mon problème est dans la récupération des images.
sur le premier bien cela fonctionne mais a partir du second et suivant cela m'affiche les images en double.
je vous met le code :
le xml (raccourci):
<?xml version="1.0" encoding="ISO-8859-1"?>
<LISTEPA date="2018-11-29 12:37:55">
<BIEN>
<LOCALISATION>
<VILLE><![CDATA[Brest]]></VILLE>
<CODE_POSTAL>29200</CODE_POSTAL>
<ADRESSE><![CDATA[1 Rue des 11 Martyrs]]></ADRESSE>
<VISIBLE>true</VISIBLE>
<INSEE>29019</INSEE>
<LATITUDE>48.390453338623</LATITUDE>
<LONGITUDE>-4.482745170593</LONGITUDE>
<LATITUDE_WEB>48.39045334</LATITUDE_WEB>
<LONGITUDE_WEB>-4.48274517</LONGITUDE_WEB>
<PROXIMITE/>
</LOCALISATION>
<IMAGES>
<IMG><![CDATA[https://nomdedomaine/catalog/images/pr_p/1/2/3/4/5/6/7/8/11111111a.jpg?DATEMAJ=29/11/2018-12:00:00]]></IMG>
<IMG><![CDATA[https://nomdedomaine/catalog/images/pr_p/1/2/3/4/5/6/7/8/11111111b.jpg?DATEMAJ=29/11/2018-12:00:00]]></IMG>
</IMAGES>
</BIEN>
<BIEN>
<LOCALISATION>
<VILLE><![CDATA[Bordeaux]]></VILLE>
<CODE_POSTAL>33000</CODE_POSTAL>
<ADRESSE><![CDATA[1 Rue des 11 Martyrs]]></ADRESSE>
<VISIBLE>true</VISIBLE>
<INSEE>29019</INSEE>
<LATITUDE>48.390453338623</LATITUDE>
<LONGITUDE>-4.482745170593</LONGITUDE>
<LATITUDE_WEB>48.39045334</LATITUDE_WEB>
<LONGITUDE_WEB>-4.48274517</LONGITUDE_WEB>
<PROXIMITE/>
</LOCALISATION>
<IMAGES>
<IMG><![CDATA[https://nomdedomaine/catalog/images/pr_p/1/2/3/4/5/6/7/8/22222222a.jpg?DATEMAJ=29/11/2018-12:00:00]]></IMG>
<IMG><![CDATA[https://nomdedomaine/catalog/images/pr_p/1/2/3/4/5/6/7/8/22222222b.jpg?DATEMAJ=29/11/2018-12:00:00]]></IMG>
</IMAGES>
</BIEN>
</LISTEPA>
le php :
$BIENS456 = simplexml_load_file('test.xml');
foreach ($BIENS456->BIEN as $BIEN) {
//LOCALISATION
foreach ($BIEN->LOCALISATION as $LOCALISATION) {
$VILLE = $LOCALISATION->VILLE;
$CODE_POSTAL = $LOCALISATION->CODE_POSTAL;
}
// POUR LES IMAGES
foreach($BIEN->IMAGES->IMG as $url) {
$url = explode('?', $url);
$champs_SQL_images[] = $url[0]; # champs SQL-URLs contruits un/un dans un tableau
}
echo '<br>';
echo $CODE_POSTAL." ".$VILLE.'<br>';
echo $champs_SQL_images[0];
echo '<br>';
echo $champs_SQL_images[1];
echo '<br>';
echo $champs_SQL_images[2];
echo '<br>';
echo $champs_SQL_images[3];
echo '<br>';
}
le resultat :
29200 Brest
https://nomdedomaine/catalog/images/pr_p/1/2/3/4/5/6/7/8/11111111a.jpg
https://nomdedomaine/catalog/images/pr_p/1/2/3/4/5/6/7/8/11111111b.jpg
33000 Bordeaux
https://nomdedomaine/catalog/images/pr_p/1/2/3/4/5/6/7/8/11111111a.jpg
https://nomdedomaine/catalog/images/pr_p/1/2/3/4/5/6/7/8/11111111b.jpg
https://nomdedomaine/catalog/images/pr_p/1/2/3/4/5/6/7/8/22222222a.jpg
https://nomdedomaine/catalog/images/pr_p/1/2/3/4/5/6/7/8/22222222b.jpg
Je pense que c'est une histoire de boucle mais je ne vois pas comment faire.
Merci d'avance de votre aide.
Cdt
Modifié par spawns (25 Nov 2021 - 15:06)