Modifier un fichier XML avec SimpleXML

Eléphanteau du PHP | 14 Messages

30 juin 2005, 18:41

Bonjour tout le monde !

Je reviens dans le monde du PHP que je n'ai pas remué depuis 2 ans ...

Je suis entrain de me concocter une petite interface PHP qui lit dans un fichier XML et affiche le contenu des noeuds dans un formulaire.

Jusque la, tout va bien ! :D

J'ai utilisé SimpleXML pour la lecture du fichier et l'affichage du contenu des noeuds. Voici mon code (quoique banal ...) , si ca interesse quelqu'un :

 <? 
$ipin_product_database = simplexml_load_file ('products.xml');
foreach ($ipin_product_database->{'product-list'} as $product_list) { 
  foreach ($product_list->product as $product) {
    	
    		echo "<font face=\"arial\" size=\"2\" color=\"#404040\">Identifiant Produit:<b> $product->productId</b></font><br></a>";
    		echo "<font face=\"arial\" size=\"2\" color=\"#404040\">Description: $product->description</font><br></a>";
				
				// lien qui envoie vers la page detaillant le produit.
				// on envoie les variables par l'URL avec "URL?variable=valeur"
				echo '<font face=\"arial\" size=\"2\" color=\"#404040\"><a href="details_produits_test.php?productId='.$product->productId.'
&currency='.$product->currency.'
&amount='.$product->amount.'
&description='.$product->description.'
&category='.$product->category.'
&class='.$product->class.'
&fulfillmentUrl='.$product->fulfillmentUrl.'
&paymentGuaranteed='.$product->paymentGuaranteed.'
&iPINHandleRefund='.$product->iPINHandleRefund.'
&autoConfirm='.$product->autoConfirm.'
&paymentService='.$product->paymentService.'" target="main">modifier le produit<br><br></a></font>';
				
        } 
} 
?>

J'ai lu la FAQ et j'ai vu qu'il est possible d'utiliser SimpleXML pour modifier le contenu de ce fichier XML. C est ce qui m interesse.

Je ne sais pas comment proceder pour modifier le contenu d'une balise PRECISE.

EN effet, par exemple je voudrais faire la modification suivante pour UN PRODUIT SELECTIONNE:

<prix>0.0</prix> ===> <prix>12.3</prix>

Avez vous une idee de comment proceder ? Quelqu'un a t il deja fait ca avec SimpleXML ?

Merci d'avance de vos réponses.

A bientot

Jean-Christophe

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

01 juil. 2005, 09:42

Tu peux atteindre les balises de plusieurs manières avec SimpleXML...je te laisse consulter l'article bien foutu de Journaldunet

http://developpeur.journaldunet.com/tut ... l-1c.shtml
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Eléphanteau du PHP | 14 Messages

01 juil. 2005, 12:36

Merci beaucoup pour le lien !

Je suis entrain d etudier ca !

A bientot