| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| =) Registriert seit: Jun 2003
Beiträge: 499
| mehrdimensionale Arrays und XML-Daten VS me
hi vorneweg: ist eigentlich ein folgeproblem aus [Denkansatz] simple Datenstruktur wollte es nur sauber in nem neuem thread haben: und zwar versuche ich nen XML Dokument in nen mehrdimensionales array zu packen, ich scheitere aber grandios daran. die theorie von arrays habe ich glaube ich verstanden, aber in der praxis fehlt mir noch die ein oder andere gehirnschlaufe mein XML: ActionScript:
und der AS code noch: ActionScript:
eins zwei drei aus, also alle ids der texte. bei ausgabe der arrays gibt er mir undefined, muss wohl also bei der initialisation schon was deftig schieflaufen ![]() das array sollte eigentlich diese struktur aufweisen: [textid] [textelement also head oder text] [typ bzw. wert als assoziatives array]
__________________ x 600.6 y 123.3 |
| | |
| | #2 (permalink) |
| The Man Who Wasn't There Registriert seit: Jul 2003 Ort: BÄRLIN
Beiträge: 1.156
|
hi, bin zwar nicht so der xml crack aber sollten die texte nicht in einem tag stehen welches nicht <text> heißt da ja deine unterpunkte schon <text> heißen... also anstatt <text>super_text</text> eher <inhalt>super_text</inhalt> oder ähnliches nur nicht <text> ? gruß mike
__________________ Dot-Realities Mike Broders Berlin ICQ:105925103 Dot-Realities v4.0 under construction! |
| | |
| | #3 (permalink) |
| =) Registriert seit: Jun 2003
Beiträge: 499
|
ok danke habe ich geändert, hätte eventuell später probleme damit geben können. so mein XML sieht jetzt so aus: ActionScript:
das as macht aber immer noch probleme. mit folgendem code: ActionScript:
gibt er mir nur das aus: Code: XML geladen! Anzahl der enthaltenen Texte: 3 Initialisierung fertig! Element: eins Element: zwei Element: drei die array inhalte sind undefined bzw kann ich sie gar nicht mehr abrufen. suche auf dem board hat mich nicht besonders weitergebracht. wäre super wenn "ein grosser" mich auf meinen fehler stumpen könnte
__________________ x 600.6 y 123.3 |
| | |
| | #4 (permalink) |
| The Man Who Wasn't There Registriert seit: Jul 2003 Ort: BÄRLIN
Beiträge: 1.156
|
hi, mach mal : ActionScript:
mike
__________________ Dot-Realities Mike Broders Berlin ICQ:105925103 Dot-Realities v4.0 under construction! |
| | |
| | #6 (permalink) |
| _//\\#//\\_ Registriert seit: Jan 2003
Beiträge: 7.060
| PHP-Code: grz |
| | |
| | #7 (permalink) |
| =) Registriert seit: Jun 2003
Beiträge: 499
|
bin jetzt völlig vom pfad abgekommen: ActionScript:
um nochmal mein eigentliches verständnisproblem zu erläutern: aus dem vorhandenen xml daten möchte ich ein mehrdimensionales array mit folgender struktur erstellen array[textid][elementid]["typ"] und array[textid][elementid]["wert"]
__________________ x 600.6 y 123.3 |
| | |
| | #8 (permalink) |
| =) Registriert seit: Jun 2003
Beiträge: 499
|
@warrantmaster: lustig. bei der boardsuche habe ich einen thread gefunden indem es um ähnliches ging, wo du auch geantwortet hast. da hast du auch eine möglichkeit mit push() vorgeschlagen. ![]() der casus-knackus ist, dass die struktur der elemente in jedem "texte"-knoten, nicht starr ist ![]() mal gibt es einmal "head" und viermal "text", mal dreimal "head" und nullmal "text". ich möchte auch die möglichkeit haben andere "informationsarten" als head und text zu speichern (z.B. img), deswegen hat jedes element in der array struktur ja nochmal "wert" und "typ" als assoziatives array. das ganze ist als universales "text in array einlese sache und dann dieses array von flash separat rendern lassen"-ding geplant. es soll ermöglichen text variabel einzulesen, inklusive zwischengeschobenen bildern etc. hatte mir den array aufbau deswegen so durchüberlegt, aber die programmiertechnische umsetzung ist dann doch was anderes
__________________ x 600.6 y 123.3 |
| | |
| | #9 (permalink) |
| =) Registriert seit: Jun 2003
Beiträge: 499
|
ok ich glaube ich bin auf dem richtigem weg: folgender code: ActionScript:
traced mir: Code: eins i: 0 j: 0 i: 0 j: 1 zwei i: 1 j: 0 i: 1 j: 1 i: 1 j: 2 drei i: 2 j: 0 i: 2 j: 1 i: 2 j: 2 ActionScript:
was ja schonmal richtig ist!
__________________ x 600.6 y 123.3 |
| | |
| | #10 (permalink) |
| =) Registriert seit: Jun 2003
Beiträge: 499
|
okay, okay, okay: ActionScript:
traced mir: eins i: 0 j: 0 head tolle überschrift i: 0 j: 1 text super text zwei i: 1 j: 0 head tolle überschrift i: 1 j: 1 text super text i: 1 j: 2 text normaler text drei i: 2 j: 0 head tolle übeberschrift i: 2 j: 1 text super text i: 2 j: 2 head zweite überschrift was komplett perfekt ist. gebe ich aber die arrays aus ausgabe.text += "Element: " + XMLtext[meinXML.firstChild.childNodes[i].attributes.id] + newline; sehe ich nur Element: [object Object],[object Object] Element: [object Object],[object Object],[object Object] Element: [object Object],[object Object],[object Object]
__________________ x 600.6 y 123.3 |
| | |
| | #11 (permalink) |
| _//\\#//\\_ Registriert seit: Jan 2003
Beiträge: 7.060
| PHP-Code: xml: Code:
<?xml version="1.0" encoding="UTF-8"?>
<inhalt>
<texte id="eins">
<head>tolle überschrift1</head>
<text>super text1-1</text>
<text>super text1-2</text>
<text>super text1-3</text>
<bild>bild1.jpg</bild>
<link>www.flashforum.de</link>
</texte>
<texte id="zwei">
<head>tolle überschrift2</head>
<text>super text2</text>
</texte>
<texte id="drei">
<head>tolle überschrift3</head>
<text>super text3</text>
</texte>
</inhalt> )grz |
| | |
| | #14 (permalink) |
| =) Registriert seit: Jun 2003
Beiträge: 499
|
so, das erstellen des dynamischen mehrdimensionalem arrays klappt jetzt, wie ich es wollte: ActionScript:
nur eine kleine sache würd das weitere arbeiten noch erleichtern: und zwar: wie kann ich an den namen eines dynamisch erzeugtem asoziativen array kommen? klingt komplizierter als es ist: ich setze den namen so XMLtext[meinXML.firstChild.childNodes[i].attributes.id] = []; in der xml haben diese id's namen (z.B. "eins", "zwei" etc.) wie kann ich aber genau diees namen der einzelnen arrayelemente wieder ausgeben lassen? also ich möchte das er mir folgendes traced: Elemente: eins zwei drei mit XMLtext[meinXML.firstChild.childNodes[i].attributes.id] komme ich ja an den inhalt des elements heran, nicht aber an seinen namen. es muss doch eine möglichkeit geben diesen namen auszulesen und nicht immer meinXML.firstChild.childNodes[i].attributes.id zu benutzen. is bestimmt super einfach wenn mans weiss!
__________________ x 600.6 y 123.3 Geändert von dante (01-12-2004 um 10:41 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |