Ciao a tutti, sto cercando di realizzare un mp3 player per implementare un radio online su un mio sito internet solo che sono un po' arrugginito sull'uso di flash e AS
Genero un file .xml che contiene la playlist dei pezzi simile a questo:codice:<?xml version="1.0" encoding="iso-8859-1"?> <playlist> <canzone id="001.mp3"> <autore>Billy Idol</autore> <titolo>Super Overdrive</titolo> </canzone> <canzone id="002.mp3"> <autore>Billy Idol</autore> <titolo>World Comin Down</titolo> </canzone> <canzone id="003.mp3"> <autore>Billy Idol</autore> <titolo>Rat Race</titolo> </canzone> </playlist>
e riesco a mettere i risultati in 3 vettori utilizzando il seguente codice:
il problema è che sono bloccato perchè non riesco ad estrarre il nome del file dal vettore "nomefile", infatti il trace mi restituisce undefined...codice:filexml = "playlist.xml"; ApriXML(); function ApriXML () { mioxml = new XML(); myarray = new Array(); myarray2 = new Array(); myarray3 = new Array(); nomefile = new Array(); titolo = new Array(); autore = new Array(); mioxml.load(filexml); mioxml.onLoad = ElaboraXML; function ElaboraXML (success) { if (mioxml.loaded) { myarray = mioxml.childNodes; for (j=0;j<=myarray.length;j++){ if (myarray[j].nodeName == "playlist"){ myarray2 = myarray[j].childNodes; for (i=0;i<=myarray2.length;i++){ if (myarray2[i].nodeName == "canzone"){ _root.nomefile.push(myarray2[i].attributes.id); myarray3 = myarray2[i].childNodes; for (k=0;k<=myarray3.length;k++){ if (myarray3[k].nodeName == "autore"){ _root.titolo.push(myarray3[k].childNodes.toString()); } if (myarray3[k].nodeName == "titolo"){ _root.autore.push(myarray3[k].childNodes.toString()); } } } } } } }; delete myarray; delete myarray2; delete myarray3; delete mioxml; }; }; play = 0; s1 = new Sound(); for(i==0;i<3;i++){ trace(nomefile[i]); } s1.loadSound(("mp3/" & nomefile[play]), false);
dove sbaglio? :master:

Rispondi quotando