Bonjour
Je rencontre un problème avec un flux XML qui se décompose comme ceci :
Je le lis comme cela :
Mais voila lors de l'insertion dans mysql (sous wamp) le problème des accents n'est pas réglé du tout .
Du moins ca fonctionne tant que les éléments du flux ne sont pas dans les balises CDATA .
J'ai tt essayé mais rien a faire , c'est comme si UTF8_decode etait ignoré .
Je rencontre un problème avec un flux XML qui se décompose comme ceci :
Code:
<hotel>
<hotel_id>11601</hotel_id>
<hotel_nom><![CDATA[FIRST HOTEL AALBORG]]></hotel_nom>
<cp>21000</cp>
<departement_id>0</departement_id>
<departement></departement>
<ville_id>1</ville_id>
<ville>Aalborg</ville>
<pays>Danemark</pays>
<pays_id>1</pays_id>
<description><![CDATA[L'hôtel First d'Aalborg se trouve à seulement 7 km de l'aéroport, à 1 km de la gare et a une distance de marche de magasins, des attractions touristiques et des restaurants. Il compte 155 chambres équipées de salles de bains privées, et 12 suites avec ]]></description>
<etoiles>4</etoiles>
<chambres>0</chambres>
<image>http://www.hotelclub.net/common/imagegallery/HotelImage.aspx?hid=10844</image>
<chaine_id>0</chaine_id>
<chaine></chaine>
<chaine_image>http://img.webmastravel.net/hotel/0.gif</chaine_image>
<voyagistes>
<offre>
<voyagiste_id>6</voyagiste_id>
<voyagiste>HotelClub</voyagiste>
<voyagiste_image>http://img.webmastravel.net/voyagistes/6.gif</voyagiste_image>
<url>http://mb.webmastravel.net/hgo2.php?a=11601&b=6&c=1047</url>
<prix>0</prix>
</offre>
</voyagistes>
</hotel>
Je le lis comme cela :
Code:
$bibliotheque = simplexml_load_file('wmt_hotels.xml');
foreach ($bibliotheque->hotel as $hotel)
{
$hotel_id = utf8_decode($hotel->hotel_id);
$hotel_nom = utf8_decode($hotel->hotel_nom);
$cp = utf8_decode($hotel->cp);
$departement = utf8_decode($hotel->departement);
$ville = utf8_decode($hotel->ville);
$pays = utf8_decode($hotel->pays);
$description = utf8_decode($hotel->description);
$etoiles = utf8_decode($hotel->etoiles);
$chambres = utf8_decode($hotel->chambres);
$image = utf8_decode($hotel->image);
$chaine = utf8_decode($hotel->chaine);
$hotel_id = mysql_real_escape_string($hotel_id);
$hotel_nom = mysql_real_escape_string($hotel_nom);
$cp = mysql_real_escape_string($cp);
$departement = mysql_real_escape_string($departement);
$ville = mysql_real_escape_string($ville);
$pays = mysql_real_escape_string($pays);
$description = mysql_real_escape_string($description);
$etoiles = mysql_real_escape_string($etoiles);
$chambres = mysql_real_escape_string($chambres);
$image = mysql_real_escape_string($image);
$chaine = mysql_real_escape_string($chaine);
.....
Mais voila lors de l'insertion dans mysql (sous wamp) le problème des accents n'est pas réglé du tout .
Du moins ca fonctionne tant que les éléments du flux ne sont pas dans les balises CDATA .
J'ai tt essayé mais rien a faire , c'est comme si UTF8_decode etait ignoré .