Visualizzazione dei risultati da 1 a 5 su 5

Discussione: ricercare dati xml

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    20

    ricercare dati xml

    Ciao, ho 2 textinput che dovrebbero fare una ricerca all'interno di un file xml ma insieme (con 2 chiavi di ricerca) non funziona, se invece utilizzo solo una chiave di ricerca mi estrae i dati.

    questo è l'evento associato al bottone che ho usato per la ricerca:

    on (release) {
    _root.stringa = word.text;
    _root.stringa += word1.text;
    gotoAndPlay(2);
    }


    qualcuno potrebbe spiegarmi come posso utilizzare più chiavi di ricerca ?

    grazie

  2. #2
    Non so come hai strutturato la ricerca ma ti dico una cosa

    word.text="Pippo"
    word1.text="Pluto"

    _root.stringa = word.text;
    _root.stringa += word1.text;

    ottieni PippoPluto


    forse se devi dividere le variabili potresti inserire una &

  3. #3
    dipende da come è fatta la struttura del file XML.

    Non c'è una risposta univoca.

    COmunque quella che hai postato non è altro che un concatenamento di stringhe.

    Devi postare il codice con cui leggi il file XML

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    20
    questo è il codice che richiama i dati xml


    stop ();
    dati_xml = new XML();
    dati_xml.ignoreWhite = true;
    dati_xml.path = this;
    dati_xml.onLoad = function(success)
    {
    if(success){
    //result.text+="load data from prodotti.xml\n";
    var nodes = this.firstChild.childNodes;
    for(var i = 0; i < nodes.length; i++){
    var codice = nodes[i].attributes.codice;
    var prodotto = nodes[i].attributes.prodotto;
    var prezzo = nodes[i].attributes.prezzo;

    if(codice.indexOf(_root.stringa)!=-1 || prodotto.indexOf(_root.stringa)!=-1){
    result.text+="codice:"+codice+"\nprodotto:"+prodot to+"\nprezzo:"+prezzo+"\n";
    }
    }
    }
    else {
    result.text+="no data found\n";
    }
    };
    dati_xml.load("prodotti.xml");
    .................................................. .....................................
    e questo è il file xml

    <motore>
    <item codice="codice1" prodotto="CASA" prezzo="2,78"></item>
    <item codice="codice2" prodotto="RISTORANTE" prezzo="6,55"></item>
    <item codice="codice3" prodotto="CASA" prezzo="4,43"></item>
    <item codice="codice4" prodotto="ALBERGO" prezzo="6,83"></item>
    </motore>
    .................................................. ...........................................

    la cosa strana è che funzionava, non funziona + da quando ho inserito un controllo .toLowerCaseal al codice (che ho tolto perchè mi dava questo errore) ed esattamente l'ho inserito in questa parte di codice:
    if(codice.toLowerCaseal .indexOf(_root.stringa)!=-1
    non sono esperto e probabilmente l'ho inserito in un modo sbagliato, ma l'ho tolto :master: perchè non funziona come prima???
    grazie.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    20
    qualcuno avrebbe un po di pazienza e spiegarmi come faccio ad estrarre un record (codice="codice1" prodotto="CASA" prezzo="2,78") dal file xml facendo una ricerca con più chiavi di ricerca?
    Ho il codice che mi estrae tutti i dati xml ma vorrei poter scegliere cosa estrarre, ho provato con questo evento:
    on (release) {
    _root.stringa = word.text;
    _root.stringa += word1.text;
    gotoAndPlay(2);
    }
    ma non funziona
    .................................................. .........
    questo è il codice che estrae i dati

    stop ();
    dati_xml = new XML();
    dati_xml.ignoreWhite = true;
    dati_xml.path = this;
    dati_xml.onLoad = function(success)
    {
    if(success){
    //result.text+="load data from prodotti.xml\n";
    var nodes = this.firstChild.childNodes;
    for(var i = 0; i < nodes.length; i++){
    var codice = nodes[i].attributes.codice;
    var prodotto = nodes[i].attributes.prodotto;
    var prezzo = nodes[i].attributes.prezzo;

    if(codice.indexOf(_root.stringa)!=-1 || prodotto.indexOf(_root.stringa)!=-1){
    result.text+="codice:"+codice+"\nprodotto:"+prodot to+"\nprezzo:"+prezzo+"\n";
    }
    }
    }
    else {
    result.text+="no data found\n";
    }
    };
    dati_xml.load("prodotti.xml");
    .................................................. .....................................
    e questo è il file xml

    <motore>
    <item codice="codice1" prodotto="CASA" prezzo="2,78"></item>
    <item codice="codice2" prodotto="RISTORANTE" prezzo="6,55"></item>
    <item codice="codice3" prodotto="CASA" prezzo="4,43"></item>
    <item codice="codice4" prodotto="ALBERGO" prezzo="6,83"></item>
    </motore>
    .................................................. ...........................................

    grazie

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.