[XPATH] probleme de lecture
Bonjour,
j'ai un probléme de lecture et d'ecriture, je vous montre le structure de mon fichier XML , et vous comprendrez mon probleme :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| <mysql>
<database name="personnes">
<table>
<fiche>
<var name="id">..</var>
<var name="nom">...</var>
<var name="prenom">...</var>
<var name="statut">...</var>
<var name="formation">...</var>
<var name="pageWebPerso" generation="auto"></var>
<var name="photo"></var>
<var name="distinctions" generation="none"></var>
<var name="implicationprojet"><projet>projet1</projet><projet>projet2</projet></var>
<var name="tel"></var>
<var name="local"></var>
<var name="courriel"></var>
<var name="implicationlabo">5059<laboratoire>..</laboratoire></var>
</fiche>
</table>
</database>
</mysql> |
Mon probléme est avec le champs implicationprojet, comment je pourrai lire les valeurs projet1 et projet2 , avec une expression XPath, de meme comment je vais ecrire un noeud avec cette facon ?
pour la lecture j'ai essayé ca :
Code:
1 2 3 4 5 6 7 8 9 10
| function imp ($fiche)
{
$xpath = new DOMXPath($fiche->ownerDocument);
$res = $xpath->query(sprintf('var[@name = "%s"]/*', 'implicationprojet'),$fiche);
if (!$res or $res->length == 1) {
return $res->item(0)->nodeValue;
} else {
return FALSE;
}
} |
fiche etant tout le noeud fiche, mais cette fonction ne me retourne qu'un seul projet! je ne comprend pas ou se situe mon erreur, merci de bien vouloir m'aider
...