Bonjour, j aimerais recupere la valeur des liens dans ce fichier xml en php
Edité le 05/07/2013 à 21:12J arrive maintenant a affiche le premier lien avec
echo ‘
mais pas les autre…
Et comme ça :
foreach ($v->attachments->media as $i => $value) {
echo '<li>', $value['src'], '</li>';
}
oui impec çà fonctionne
Cela dit je bloque encore pour l integrer dans ma base de donne y aurais une facon de faire comme çà
$var1 = $value[‘scr’][0];
$var2 = $value[‘scr’][1];
$var3 = $value[‘scr’][2];
$var4 = ect…
Non. A l’envers : $value[0][‘src’], et je t’ai donné la façon implicitement : la boucle foreach fait ce travail, à toi de faire ta requête d’insert dans la boucle pour insérer autant de ligne que tu n’as de balises
j ai ce message d erreur quand je met comme tu as dis ,
Warning: main() [function.main]: Cannot add element media number 1 when only 0 such elements exist in /essai.php on line 56
Warning: main() [function.main]: Cannot add element media number 2 when only 0 such elements exist in /essai.php on line 57
sinon tu peut me mettre sur la voie pour la boucle pour inserer
je recupere les valeur comme ceci
$photo1 = (!empty($value[0][‘src’])) ? mysql_real_escape_string($value[0][‘src’]) : ‘’;
$photo2 = (!empty($value[1][‘src’])) ? mysql_real_escape_string($value[1][‘src’]) : ‘’;
$photo3 = (!empty($value[2][‘src’])) ? mysql_real_escape_string($value[2][‘src’]) : ‘’;
Edité le 06/07/2013 à 14:15
Encore une fois, au risque de me répéter, je le fais dans une boucle sur un objet supportant l’itération.
Si la classe de ton objet (ici SimpleXMLElement) n’implémente pas ArrayAccess (voir www.php.net… ), alors tu ne peux pas faire $value[0]. $value[‘src’] fonctionne car SimpleXML transforme chaque attribut XML en propriété de l’objet.
Tu as cependant cette méthode : www.php.net… qui te renvoie un tableau avec la liste des enfants, donc :
$values = $v->attachments->children();
echo $values[0]['src'];
echo $values[1]['src'];
echo $values[2]['src'];
devrait fonctionner…
Edité le 06/07/2013 à 17:07
ok c est bon resolu , merci