login  Naam:   Wachtwoord: 
Registreer je!
 Forum

XML uitlezen

Offline Frederic - 28/07/2006 12:32 (laatste wijziging 25/08/2006 20:26)
Avatar van FredericPHP ver gevorderde Ik heb 2 vraagjes over hoe XML te gebruiken in flash.

Dit is mijn RSS feed:
Citaat:
<rss version="2.0">
<channel>
<title>Titel van feed</title>
<link>http://www.feed.be/</link>
<description></description>
<category>Weblog</category>

<item>
<title>Titel 1</title>
<link>http://www.link1.com</link>
<description>Beschrijving 1</description>
<category>cat 1</category>
<pubDate>Thu, 11 Jun 2006 20:13:01 +0200</pubDate>
</item>
<item>
<title>Titel 2</title>
<link>http://www.link2.com</link>
<description>Beschrijving 2</description>
<category>cat 2</category>
<pubDate>Thu, 22 Jun 2006 20:13:01 +0200</pubDate>
</item>

</channel>
</rss>


Nu, vraag 1: de titel en de link van de feed uitlezen gaat, maar wanneer ik een item wil uitlezen, dan krijg ik undefined (zoals de .fla nu is), in plaats van de gegevens.

vraag 2: hoe kan ik alle <item> elementen die voorkomen (hier dus 2) onder elkaar tonen, met een soort van scheiding ertussen?

Hartelijk bedankt!

12 antwoorden

Gesponsorde links
Offline Thomas - 28/07/2006 12:34
Avatar van Thomas Moderator > scripts
Offline Frederic - 28/07/2006 12:37
Avatar van Frederic PHP ver gevorderde Maar ik heb het wel over flash hé? Totaal niets PHP ditkeer..
Offline Thomas - 28/07/2006 13:34
Avatar van Thomas Moderator Hm, ik weet niet of je dat soort dingen wel kunt doen met Flash. Een scriptingtaal als PHP leent zich hier veel beter voor denk ik.
Offline Ontani - 28/07/2006 13:54
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
> flash dan 
Offline Frederic - 28/07/2006 14:06
Avatar van Frederic PHP ver gevorderde Ja die tut heb ik gebruikt, maar als iemand mijn .fla had bekeken had ie gezien dat ik alle raad eruit gebruik, maar ik zit gewoon in de knoop met de item tags..
Offline vinTage - 29/07/2006 17:51
Avatar van vinTage Nieuw lid Kan jeje fla nog eens uploaden, "error occured blabla" krijg ik als ik de jouwe wil openen.
Offline Frederic - 29/07/2006 17:58
Avatar van Frederic PHP ver gevorderde Done!
Offline vinTage - 29/07/2006 18:02
Avatar van vinTage Nieuw lid hmmm, andere url ? want nog steeds errors.
Offline Frederic - 29/07/2006 18:10
Avatar van Frederic PHP ver gevorderde Nee hoor, hier werkt ie perfect... Tis gemaakt in Flash MX 2004 Prof.
Offline vinTage - 29/07/2006 19:40
Avatar van vinTage Nieuw lid Ik heb alles in een array gezet en die in je tekstvakken getoond, je moet je alleen nog even ontdoen van de komma's.

Ik weet niet precies hoe je dat bedoelde met onder elkaar zetten, maar ik heb de verschillende items in de textvakken onder elkaar gezet.
Hopelijk bedoel je zoiets als ik hier nu heb ;

  1. <? //kleurtjes
  2.  
  3. //textvelden html enabelen
  4. itemtitel.html = true;
  5. itemlink.html = true;
  6. itembeschrijving.html = true;
  7.  
  8. function leesXML(geladen) {
  9. if (geladen) {
  10. //aantal mandatorial tags (of hoe noemt dat ? ^^) = 4
  11. //titel/link/discription/categorie
  12. aantalItems = this.firstChild.childNodes[0].childNodes.length-4;
  13. iTitels = Array();
  14. iLinks = Array();
  15. iBeschrijvingen = Array();
  16. for (i=0; i<aantalItems; i++) {
  17. titel.text = this.firstChild.childNodes[0].childNodes[0].firstChild.nodeValue;
  18. link.text = this.firstChild.childNodes[0].childNodes[1].firstChild.nodeValue;
  19. iTitels[i] = this.firstChild.childNodes[0].childNodes[4+i].childNodes[0].firstChild.nodeValue+"<br>";
  20. iLinks[i] = "<a href='"+this.firstChild.childNodes[0].childNodes[4+i].childNodes[1].firstChild.nodeValue+"'>"+this.firstChild.childNodes[0].childNodes[4+i].childNodes[1].firstChild.nodeValue+"</a><br>";
  21. iBeschrijvingen[i] = this.firstChild.childNodes[0].childNodes[4+i].childNodes[2].firstChild.nodeValue+"<br>";
  22. }
  23. //textvakken vullen
  24. itemtitel.htmlText = iTitels;
  25. itemlink.htmlText = iLinks;
  26. itembeschrijving.htmlText = iBeschrijvingen;
  27. }
  28. }
  29. onzeGegevens = new XML();
  30. onzeGegevens.ignoreWhite = true;
  31. onzeGegevens.onLoad = leesXML;
  32. onzeGegevens.load("test.xml");


Ik verwacht dat je hier wel iets mee kan, zoniet, dan horen we het wel zeker 
Offline Frederic - 29/07/2006 20:40
Avatar van Frederic PHP ver gevorderde Aha, dat werkt idd 
Maar hiermee moet je voor iedere feed het aantal mand. tags ingeven, is er geen manier om te zorgen dat iedere keer de title tag enz eruit wordt gehaald ipv dit te moeten opgeven op welke pos dat dit is?
Offline vinTage - 29/07/2006 22:10
Avatar van vinTage Nieuw lid Hmm, geen idee of je zoiets kan doen..

Wat ik wel weet is dat je met nodeName de naam van een bepaalde node kan opvragen en zo dus controleren of je evt op de juiste positie zit.

Dus met een loop ofzo telkens een waarde ophogen totdat de juiste naam is bereikt.

  1. if (this.firstChild.childNodes[0].childNodes[waarde].childNodes[0].nodeName != "title") {
  2. waarde++;
  3. }


Mocht je evt tegen een deftigere oplossing aanlopen, dan hoor ik die ook graag 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.205s