Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][xml] Edycja pliku XML w php
krzanik
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 5.10.2004

Ostrzeżenie: (0%)
-----


Witam
Piszę skrypt do obsługi galerii fotografii. Galeria jest w pliku XML. Mam już zrobione wyświetlanie i obsługę galerii od strony użytkownika - przeglądacza stron www (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .
Teraz muszę zrobić panel administracyjny - który będzie zapisywał dane do pliku XML.
Mój problem polega na tym, że nie potrafię stworzyć w odpowiednim miejscu (gałęzi) nowego węzła z danymi.
Testowy skrypt wygląda tak:

  1. <?php
  2.  
  3. $xml = '<?xml version="1.0" encoding="utf-8" ?><contact><test> </test></contact>';
  4.  
  5. // Load the XML
  6. $DOM = new DOMDocument();
  7. $DOM -> loadXML($xml);
  8. $DOM -> strictErrorChecking = true;
  9. $DOM -> validateOnParse = true;
  10.  
  11. $rootXML = $DOM -> documentElement;
  12. $item = $DOM -> createElement('name', 'Joe');
  13. $rootXML -> appendChild($item);
  14.  
  15.  
  16. // Display
  17. echo $DOM -> saveXML();
  18.  
  19. //echo "Koniec pliku :)";
  20.  
  21. ?>


Wpisuje on do dokumentu XML węzeł <name> w którym znajduje się wartość Joe. Wygenerowany wynik wygląda tak:
  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <contact>
  3.  <test> </test>
  4.  <name>Joe</name>
  5. </contact>


Mnie chodzi o to żeby węzeł <name> znajdował się wewnątrz <test>, a wynik wyglądał następująco:
  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <contact>
  3.  <test>
  4.    <name>Joe</name>
  5.  </test>
  6. </contact>


Próbowałem już różnych sposobów, czytałem manuale, ale jakoś na razie nie wpadłem na rozwiązanie tego problemu (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) .
Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




no ba. skoro ma byc w tekst to musisz przypisac go to tekst, a nie tak jak ty to robisz do roota.
Musisz najperw pobrac tekst: getElementsByTagName('tekst').item(0) i do tekst podpiac to co chcesz.

http://pl.php.net/manual/pl/function.dom-d...tsbytagname.php
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 01:30