Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 18-11-2004, 08:08   #1 (permalink)
meine nerven !!!
 
Registriert seit: Jan 2003
Ort: Pforzheim
Beiträge: 33
Startpilot für xml - Auswertung gesucht

Hallo, scheint die winterlichen Temperaturen haben den Diesel zwischen meinen Schulterblättern zum verharzen gebracht, vielleicht liegt es auch daran, dass ich mit xml mal gar keine Erfahrung hab und mir die diversen tutorials und Handbücher zwar beim Einstieg geholfen haben - aber ich doch noch zu wenig Grundwissen hab.

Mein Problem:
<?xml version='1.0' encoding='utf-8'?>
<aufnahme_daten>
<aufnahme_daten morgens="1" abends="1" name="1222301" />
<aufnahme_daten morgens="1" abends="0" name="1355101" />
<aufnahme_daten morgens="1" abends="1" name="1889121" />
<aufnahme_daten morgens="1" abends="0" name="1234567" />
<aufnahme_daten morgens="1" abends="0" name="1889122" />
<aufnahme_daten morgens="1" abends="0" name="1889123" />
</aufnahme_daten>

name ist die Bezeichnung unter der ich das foto auf meinem Rechner liegen habe. morgens=1 bedeutet - dass die Aufnahme eine Morgenstimmung ist abends= 1 bedeutet Abendtimmung, wenn beides 1 hat ist die aufnahme sowohl als auch zuverwenden.

Diese xml will ich so auswerten, dass ich als Ergebniss alle name bekomme,
die z.B. unter abends den wert 1 stehen habe und die will ich in einer sich selbst multipliierenden Box samt Namen anzeigen.
Reines Durchzählen habe ich hingekriegt - aber diese Abfrage kostet mich die Tage und Nächte - wer kann mir auf die Sprünge helfen?
Danke Christian
ChristianEp ist offline   Mit Zitat antworten
Alt 18-11-2004, 13:10   #2 (permalink)
FlashKrieger
 
Benutzerbild von hadoken
 
Registriert seit: Apr 2004
Ort: Erde
Beiträge: 94
Lightbulb xml einlesen

Hi christian,

da ich mich gerade bei einem projekt mit xml auseinandergesetzt habe, hier mal ne kleine zip, die ganau dein problem löst. deine xml ist auch dabei.

funktioniert auch mit anderen xml-files , vorrausgesetzt du behältst die struktur der xml in der form wie oben gepostet bei...

Zur Erklärung hier der auskommentierte HauptCode:

PHP-Code:


// erst mal ne funktion die dir die xml-einliest
function xml_einlesen(arg) {
    
// neues XML Objekt erstellen
    
var xmlDaten = new XML();
    
xmlDaten.ignoreWhite true//leerräume in xml ignorieren
    
xmlDaten.load(arg);
    
xmlDaten.onLoad = function(success) {
        if (
success) {
            
//Ausgabe
            
meldungen "Das laden der *.xml ist im gang..."+chr(13);
            
            
// wieviele xml-Knoten?
            
anzahlEintraege xmlDaten.firstChild.childNodes.length;
            
            
//neuer Array für die einzelnen Werte
            
Eintraege = [];
            
            
//schleife zum durchgehen aller xml-knoten
            
for (var 0i<anzahlEintraegei++) {
                
Eintraege[i] = [];// Neuer Array in erstem anlegen--> mehrdimensional--> [[a,b,c],[d,e,f],[,,,],usw]]
                
Eintraege[i]["morgens"] = xmlDaten.firstChild.childNodes[i].attributes.morgens;
                
Eintraege[i]["abends"] = xmlDaten.firstChild.childNodes[i].attributes.abends;
                
Eintraege[i]["name"] = xmlDaten.firstChild.childNodes[i].attributes.name;
                
                }
                
            
//Ausgabe --> Textfield meldungen
            
meldungen += "Das laden der *.xml war erfolgreich!"+chr(13);
            
            
//ausgabe--> Textfield daten
            
daten+="Anzahl Einträge: "+anzahlEintraege+chr(13);
            
daten+="-----------------------"+chr(13);
            
            
//wieder in einer schleife
            
for(var i=0i<anzahlEintraegei++){
                
            
daten+="EINTRAG Nr. "+(i+1) + chr(13);
            
daten+="-----------------------"+chr(13);
            
daten+="morgens: "+Eintraege[i]["morgens"]+ chr(13);
            
daten+="abends: "+Eintraege[i]["abends"]+ chr(13);
            
daten+="name: "+Eintraege[i]["name"]+ chr(13);
            
daten+="-----------------------"chr(13);
            
daten+="-----------------------"chr(13);
    
            }
            
    
//Ausgabe
    
_root.meldungen += "Fertig!";
            }else{
            
// Wenn Laden der xml nicht möglich
            
meldungen += "Das laden der *.xml ist nicht möglich...";
        }
     
    };
}

//Anzeigen eines bestimmten eintrags
function eintrag_anzeigen(arg0arg1){
    
//die von den Buttons übergebenen Parameter ins DynTextFeld "daten" schreiben
    
daten="Array Eintraege["+arg0+"]['"+arg1+"']: "+Eintraege[arg0][arg1];
    
    } 
In den Buttos ist der Funktionsaufruf drin, alles weitere dürfte ja kein Problem mehr sein.

was du allerdings genau mit einer
Zitat:
sich selbst multipliierenden Box
meinst ist mir etwas schleierhaft

gruß hadoken
Angehängte Dateien
Dateityp: zip XML-lesen.zip (8,7 KB, 2x aufgerufen)
hadoken ist offline   Mit Zitat antworten
Alt 18-11-2004, 16:29   #3 (permalink)
meine nerven !!!
 
Registriert seit: Jan 2003
Ort: Pforzheim
Beiträge: 33
Wink danke danke danke

Zitat:
Zitat von hadoken2
Hi christian,

da ich mich gerade bei einem projekt mit xml auseinandergesetzt habe, hier mal ne kleine zip, die ganau dein problem löst. deine xml ist auch dabei.

funktioniert auch mit anderen xml-files , vorrausgesetzt du behältst die struktur der xml in der form wie oben gepostet bei...

Zur Erklärung hier der auskommentierte HauptCode:

PHP-Code:


// erst mal ne funktion die dir die xml-einliest
function xml_einlesen(arg) {
    
// neues XML Objekt erstellen
    
var xmlDaten = new XML();
    
xmlDaten.ignoreWhite true//leerräume in xml ignorieren
    
xmlDaten.load(arg);
    
xmlDaten.onLoad = function(success) {
        if (
success) {
            
//Ausgabe
            
meldungen "Das laden der *.xml ist im gang..."+chr(13);
            
            
// wieviele xml-Knoten?
            
anzahlEintraege xmlDaten.firstChild.childNodes.length;
            
            
//neuer Array für die einzelnen Werte
            
Eintraege = [];
            
            
//schleife zum durchgehen aller xml-knoten
            
for (var 0i<anzahlEintraegei++) {
                
Eintraege[i] = [];// Neuer Array in erstem anlegen--> mehrdimensional--> [[a,b,c],[d,e,f],[,,,],usw]]
                
Eintraege[i]["morgens"] = xmlDaten.firstChild.childNodes[i].attributes.morgens;
                
Eintraege[i]["abends"] = xmlDaten.firstChild.childNodes[i].attributes.abends;
                
Eintraege[i]["name"] = xmlDaten.firstChild.childNodes[i].attributes.name;
                
                }
                
            
//Ausgabe --> Textfield meldungen
            
meldungen += "Das laden der *.xml war erfolgreich!"+chr(13);
            
            
//ausgabe--> Textfield daten
            
daten+="Anzahl Einträge: "+anzahlEintraege+chr(13);
            
daten+="-----------------------"+chr(13);
            
            
//wieder in einer schleife
            
for(var i=0i<anzahlEintraegei++){
                
            
daten+="EINTRAG Nr. "+(i+1) + chr(13);
            
daten+="-----------------------"+chr(13);
            
daten+="morgens: "+Eintraege[i]["morgens"]+ chr(13);
            
daten+="abends: "+Eintraege[i]["abends"]+ chr(13);
            
daten+="name: "+Eintraege[i]["name"]+ chr(13);
            
daten+="-----------------------"chr(13);
            
daten+="-----------------------"chr(13);
    
            }
            
    
//Ausgabe
    
_root.meldungen += "Fertig!";
            }else{
            
// Wenn Laden der xml nicht möglich
            
meldungen += "Das laden der *.xml ist nicht möglich...";
        }
     
    };
}

//Anzeigen eines bestimmten eintrags
function eintrag_anzeigen(arg0arg1){
    
//die von den Buttons übergebenen Parameter ins DynTextFeld "daten" schreiben
    
daten="Array Eintraege["+arg0+"]['"+arg1+"']: "+Eintraege[arg0][arg1];
    
    } 
In den Buttos ist der Funktionsaufruf drin, alles weitere dürfte ja kein Problem mehr sein.

was du allerdings genau mit einer meinst ist mir etwas schleierhaft

gruß hadoken
Merci und vielen Dank,
habe zwar ( frisch ausgeschlafen und Abstand hilft bei mir meist ....) auch eine Lösung gefunden - werde Deine aber mal genau studieren - weil ích denk mein Ansatz - aus Try und Error herausentstanden - ist etwas unflexibel.
Das selbstmultiplizieren ist übrigens ein duplicate movieclip - will meine Bilder später nebeneinander sehen in einer Box mit Rollbalken - aber der balken ist ein anderes Problem ...
ChristianEp ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 10:14 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele