Visualizzazione dei risultati da 1 a 5 su 5

Discussione: xml xml xml

  1. #1

    xml xml xml

    Partendo dall'ormai celeberrimo esempio di Enrico Lai su "Flash e XML" (es_10), sto tentando di visualizzare su un .swf i dati che carico da un XML. Invano.
    Ecco il codice AS, che naturalmente ho inserito nel primo -ed unico- fotogramma del filmato .fla:

    filexml = "modelli.xml";

    ApriXML();
    function ApriXML () {

    mioxml = new XML();

    myarray = new Array();


    mioxml.load(filexml);
    mioxml.onLoad = ElaboraXML;
    function ElaboraXML (success) {
    if (mioxml.loaded) {

    myarray = mioxml.childNodes;

    Dati();

    CreaTabelle();

    delete myarray;
    delete mioxml;

    }
    };
    };



    // Funzione che prende i dati XML e li mette in degli Array

    function Dati () {

    // Array che contengono i Dati -----------------------
    modelli = new Array();
    modello = new Array();
    costo = new Array();
    caratteristiche = new Array();


    for (k=0; k<=myarray.length; k++) {

    if (myarray[k].nodeName == "modello") {
    modello.push(myarray[k].attributes.id);
    } else if (myarray[k].nodeName == "costo") {
    costo.push(myarray[k].attributes.h);
    } else if (myarray[k].nodeName == "caratteristiche") {
    caratteristiche.push(myarray[k].attributes.h);

    }


    };

    };



    // Funzione che Crea i clip
    // e li posiziona sullo stage del filmato

    function CreaTabelle () {

    barranav.attachMovie("clipmsg", "clipmsg"+i, i);
    // Attribuisco la coordinata X e Y
    _root.barranav["clipmsg"+i]._x = 10
    _root.barranav["clipmsg"+i]._y = 25+i*45;

    // Passo al clip le variabili che ho preso dall'XML e messo negli Array
    _root.barranav["clipmsg"+i].modello = modello[i];
    _root.barranav["clipmsg"+i].costo = costo[i];
    _root.barranav["clipmsg"+i].caratteristiche = caratteristiche[i];




    };





    questo il codice XML del file che ho chiamato modelli.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <modelli>
    <modello id="AZ1570">
    <costo>250 euros</costo>
    <caratteristiche>bellissimo</caratteristiche>
    </modello>
    <modello id="AZ1572">
    <costo>300 euros</costo>
    <caratteristiche>uh</caratteristiche>
    </modello>
    <modello id="AZ1578">
    <costo>50 euros</costo>
    <caratteristiche>ah</caratteristiche>
    </modelli>


    help me please!!

  2. #2
    codice:
    filexml = "modelli.xml";
    ApriXML();
    function ApriXML() {
    	mioxml = new XML();
    	myarray = new Array();
    	mioxml.ignoreWhite = true;
    	mioxml.load(filexml);
    	mioxml.onLoad = ElaboraXML;
    	function ElaboraXML(success) {
    		if (success) {
    			myarray = mioxml.firstChild.childNodes;
    			Dati();
    			CreaTabelle();
    			delete myarray;
    			delete mioxml;
    		}
    	}
    }
    // Funzione che prende i dati XML e li mette in degli Array 
    function Dati() {
    	// Array che contengono i Dati ----------------------- 
    	modello = new Array();
    	costo = new Array();
    	caratteristiche = new Array();
    	for (k=0; k<=myarray.length; k++) {
    		if (myarray[k].nodeName == "modello") {
    			modello.push(myarray[k].attributes.id);
    			for (i=0; i<myarray[k].childNodes.length; i++) {
    				if (myarray[k].childNodes[i].nodeName == "costo") {
    					costo.push(myarray[k].childNodes[i].firstChild.nodeValue);
    				} else if (myarray[k].childNodes[i].nodeName == "caratteristiche") {
    					caratteristiche.push(myarray[k].childNodes[i].firstChild.nodeValue);
    				}
    			}
    		}
    	}
    }
    // Funzione che Crea i clip 
    // e li posiziona sullo stage del filmato 
    function CreaTabelle() {
    	barranav.attachMovie("clipmsg", "clipmsg"+i, i);
    	// Attribuisco la coordinata X e Y 
    	_root.barranav["clipmsg"+i]._x = 10;
    	_root.barranav["clipmsg"+i]._y = 25+i*45;
    	// Passo al clip le variabili che ho preso dall'XML e messo negli Array 
    	_root.barranav["clipmsg"+i].modello = modello[i];
    	_root.barranav["clipmsg"+i].costo = costo[i];
    	_root.barranav["clipmsg"+i].caratteristiche = caratteristiche[i];
    }
    [Il mio sito V2]
    ___________________
    I.m.The.Magic.Man

  3. #3
    Grazie Lenny, sei un grande: approfitto della tua pazienza, per capire meglio: cos'è che ho cannato?cioè sbagliato?

  4. #4
    Forse devi solo capire come è strutturato un file XML; se lo capisci sarà semplice accedere al contenuto dei sui nodi.
    [Il mio sito V2]
    ___________________
    I.m.The.Magic.Man

  5. #5
    lenny, ho studiato e ristudiato il codice, ma il risultato è che Flash mi visualizza solo l'ultimo nodo <modello>, saltando completamente il primo ed il secondo (col medesimo nome). Non credo che sia un problema di variabili inserite in Flash, perchè le ho rinomate e ho ricontrollato il codice AS che crea il "push".
    Non capisco cos'è che non vada!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.