per loadVariables eingeladene Var. abfragen

PingPages

Erfahrenes Mitglied
Ich muss euch mal wieder mit einer Kleinigkeit bemühen, an der ich schon seit 4 Stunden sitze (ungelogen).

Folgender Ablauf:
In der PHP-Datei liegen 3 Variablen:
datum, beschreibung und flyer

Das sieht dann z.B. so aus:
datum=08.10.2005&beschreibung=@Alte%20Turnhalle&flyer=nein

Jetzt lade ich die 3 Vars per loadVariables in den Movieclip "screen" des Flash-Films.
_root.screen.loadVariables("nextshow.php");

2 der 3 Vars sind als Inhalte für dynamische Textfelder gedacht und werden auch korrekt angezeigt, ich schließe ein Pfadproblem daher aus.

die 3. Var brauche ich, um eine Abfrage zu machen. Die sieht so aus:
PHP:
 if (flyer == "ja") {
 	_root.screen.mcflyer._visible = true;
 } else {
 	_root.screen.mcflyer._visible = false;
 }
Irgendwie überpüft er die Variable nicht. Wie muss ich die ansprechen? Ich hab schon alles versucht aber es klappt nicht. Sind eingeladene Vars nur für dynamische Textfelder?

Hoffe, jemand weiß was
 
Mit loadVariables geladene Variablen brauchen in der Regel zumindest einige Sekundenbruchteile, bis sie geladen sind. In Textfeldern fällt Dir das wegen der kurzen Zeit nicht auf, aber wenn Du diese Variablen direkt nach dem Einladen mit AS weiterverarbeiten willst, sind sie u.U. noch nicht geladen (Flash wartet nicht, bis alle Variablen geladen sind, bevor die nächsten Befehle ausgeführt werden).

Entweder, Du wartest z.B. mit einer onEnterFrame-Methode darauf, dass "flyer" nicht mehr "undefined" ist, oder Du verwendest das LoadVars-Objekt (schau dazu mal in die FAQ und den Sammelthread), welches Dir mit seinem onLoad-Handler sowieso viel bessere Kontrollmöglichkeiten bietet.

Gruß
.
 
probier mal, die Variable in der Abfrage auch mit dem Pfad anzusprechen
Code:
 if (_root.screen.flyer == "ja") {
 
@ umlart:
Hab ich schon versucht, hab aber auch vergessen zu sagen, dass das Skript schon im MovieClip liegt, wo die Variablen hingeladen wurden.

@Datic:
Wie sähe denn so eine onEnterFrame-und-warten-bis-flyer-nicht-mehr-undefined-Methode aus? :)
 
Code:
 _root.screen.loadVariables("nextshow.php");
this.onEnterFrame = function() {
    if (_root.screen.flyer != undefined) {
        if (_root.screen.flyer == "ja") {
           // machwas;
        } else {
            // machwasanderes;
        }
        delete this.onEnterFrame;
    }
}
Besser wäre hier (und in fast allen anderen Anwendungsfällen ebenso) die Verwendung des LoadVars-Objektes. ;)

Gruß´
.
 
Ja, ich weiß selbst, das das LoadVars-Objekt besser ist, kann es aber aus unergründlichen Ursachen heraus nicht leiden.

Und danke für das Skript (ich hätte mal eher was sagen sollen) es geht endlich.
 
Zurück