Ciao!
Ho letto la guida di html.it sulla gestione degli xml in flash e sto facendo delle prove.
Il codice proposto è questo:
Il problema si presenta quando vado a leggere gli array cognomealunno e nomealunno, perchè se FUORI DALLA FUNZIONE (prima dello stop per intenderci) scrivo ilCodice PHP:filexml = "annuario.xml";
var tipo=new String;
tipo="a";
ApriXML();
function ApriXML ()
{
mioxml = new XML();
myarray = new Array();
myarray2 = new Array();
myarray3 = new Array();
nomeclasse = new Array();
cognomealunno = new Array();
nomealunno = 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 == "Annuario")
{
myarray2 = myarray[j].childNodes;
for (i=0;i<=myarray2.length;i++)
{
if (myarray2[i].nodeName == "Classe")
{
root.nomeclasse.push(myarray2[i].attributes.nome);
myarray3 = myarray2[i].childNodes;
for (k=0;k<=myarray3.length;k++)
{
if (myarray3[k].nodeName == "Alunno")
{ _root.cognomealunno.push(myarray3[k].attributes.cognome);
_root.nomealunno.push(myarray3[k].attributes.nome);
}
//if (myarray3[k].nodeName == "arrivo")
//{
// _root.harrivo.push(myarray3[k].attributes.h);
//}
}
}
}
}
}
};
delete myarray;
delete myarray2;
delete myarray2;
delete mioxml;
};
};
stop();
in debug mi dà undefined, ma se lo scrivo subito dopo il push nell'array me lo scrive.codice:trace(nomealunno[0]);
Credo sia un problema dovuto alla dichiarazione dell'array, che dovrebbe essere impostato come pubblico, ma se lo faccio mi dà altri errori.
Avete un'idea di come risolverlo?

Rispondi quotando
VVoVe: !!!
