Abwechselnder Bilderwechsel aus Datenbank

MsvP@habdichliebhasi

Erfahrenes Mitglied
Hi zusammen.

Folgendes würde ich gerne realisieren:

In einer Datenbank stehen Begriffe. Dies können unterschiedlich viele sein. Nehmen wir einfach mal:
0. Apfel 1. Birne 2. Kirsche

Diese werden an Flash weitergereicht.
Jetzt weiß Flash 1. es gibt drei Begriffe und 2. die Begriffe sind Apfel, Birne und Kirsche.

Soweit so gut.

Jetzt kommt mein eigentliches Problem.

Ich habe ein Textfeld das soll nach und nach diese Begriffe ausgeben. Sprich das Textfeld steckt in einem MC das fadet aus und bekommt den Alpha-Wert auf 0. Und wenn es wieder einfadet steht einer der anderen Begriffe darin.

Also im Textfeld steht Apfel. Es fadet aus und als nächstes steht darin Birne und es fadet wieder ein.

Jetzt überlege ich die ganze Zeit fieberhaft, wie ich es realisiere, dass die Variable sich am Ende des ausfadens so abändert, dass das Textfeld einen anderen Begriff ausgibt.

Es müsste ja so sein, dass das Textfeld die Variable "Begriff" zugewiesen hat.
Und die Begriffe aus der Datenbank jeweils der Variablen "Begriff1" , "Begriff2" und "Begriff3" zugewiesen sind.
Jetzt schaffe ich es nur nicht, dass das Textfeld ebenfalls auf Begriff1 und 2 und 3 zugreifen kann.

Vielleicht könnte man sowas auch mit einem Array lösen? Aber leider habe ich bisher wenig Erfahrungen mit Arrays. Bin aber gewillt dazu zu lernen. ;-)


Liebe Grüße und vielen Dank für eure Hilfe.

Michael Preis
 
Hi,

ein Array ist in der Tat das Mittel der Wahl.

Wie kommen die Daten denn bei Dir an - in Form eines LoadVars- oder XML-Objekts?

Gruß
.
 
Da ich mit PHP arbeite, würde ich es wohl über LoadVars machen. Habe schon ewig nicht mehr mit Flash gearbeitet. Glaube aber, dass ich das früher auf diese Art getan habe! ;-)
Wie viel man doch vergisst! *seuftz :-(

Wie müsste ich denn das Array dann anlegen, bzw auslesen für das Textfeld?
 
Hi,

das kommt darauf an, wie Du die Daten im LoadVars-Objekt anlegst.

Generell würde ich die Verwendung des XML-Objekts empfehlen, da Du damit weitaus flexibler bist (grade, wenn sich die Anzahl der Begriffe ändern kann).

Angenommen, Dein PHP-Script gibt folgendes aus:
Code:
<word id="0" value="Apfel" />
<word id="1" value="Birne" />
<word id="2" value="Banane" />
, dann könntest Du es in Flash so verarbeiten:
Code:
var words = new Array();

var xm = new XML();

xm.ignoreWhite = true;

xm.onLoad = function() {
  parse(this.childNodes);
}

xm.load("deinscript.php");

function parse(obj) {
  for (var i=0; i<obj.length; i++) {
    words[i] = obj[i].attributes.value;
  }
  starteTextAni();
}

function starteTextAni() {
  var currentWord = 0;
  // hier mit der Animation beginnen
}
Du kannst nun immer wenn das Textfeld ausgeblendet wurde, die Variable "currentWort" um 1 erhöhen und im Textfeld damit das nächste Array-Element anzeigen.

Gruß
.
 
Hi.
Das schaut schon ziemlich gut aus. Aber so richtig verstehen will ich es nicht! ;-)

Habe gerade einwenig nach XML "ge-Google't", da ich ehrlich gesagt keine Ahnung habe, wie ich das in PHP benutze. Wenn du einen heißen Tipp für mich hast, wie ich das Array in XML anlege, bzw. wie das PHP Script aussehen würde, wäre ich dir sehr dankbar.
In der Zwischenzeit arbeite ich mich noch etwas durch die Google Seiten durch!
 
Hi,

warum die Google-Suche bemühen, wenn Du die Forensuche bekommen kannst? Die Thematik "Flash und XML/PHP" wurde hier schon oft angesprochen. ;)

Es ist kein Problem, mit PHP einen XML-Baum auszugeben:
PHP:
$array = array("Apfel", "Birne", "Banane", "Kirsche");

for ($i=0; $i<count($array); $i++) {
    echo '<word id="'.$i.'" value="'.$array[$i].'" />\n';
}
Sollte genau das ausgeben, was in meinem vorherigen Posting steht.

Gruß
.
 
Zurück