variablen - preload

securid

Mitglied
hy,

habe folgendes problem.

ich verfüge bereits über einen preloader in meinem swf, jedoch lädt er mir die variablen aus einer php datei (hierbei handelt es sich um bilder, die vom server geholt werden) nicht mit.

der preloader sieht folgendermaßen aus:


bytes_gesamt = _root.getBytesTotal() + " Bytes gesamt";
bytes_geladen = _root.getBytesLoaded() + " Bytes geladen";
prozent = Math.round(_root.getBytesLoaded()*100/_root.getBytesTotal()) +" Prozent";
if (prozent == "100 Prozent" && this._framesloaded == this._totalframes) {
gotoAndPlay(3);
}



sollte aber noch:

loadVariablesNum.load("functions.php",0);


irgendwie mitladen.

problem, dass aufgetaucht ist - ist, dass wenn ich das movie lade, der film ansich geladen wird ... die bilder aus der php datei aber erst später folgen.

kann mir wer helfen?

lg securid
 
Hi,

Daten, die per
loadVariablesNum.load("functions.php",0);
oder ähnlich geladen werden, kannst Du nicht auf diese Weise in einen Ladeprozess miteinbeziehen, da Flash erst benachrichtigt wird, wenn die Daten komplett geladen sind.

Da es Dir aber wohl eher darum geht, dass die Daten in Frame 3 auf jeden Fall vorhanden sein sollen, sollte es genügen, die übergebenen Variablen mit in Deine Abfrage (die, die entscheidet, ob weitergesprungen wird) einzubeziehen.

Darf ich fragen, was die "functions.php" zurückgibt (Bilder werden es kaum sein, da die nicht per loadVariablesNum etc. geladen werden ;))?

Generell kann ich Dir das LoadVars-Objekt (bemüh' mal die Forensuche) ans Herz legen, das Dir mit seiner Callbackfunktion "LoadVars.onLoad" Feedback über den Status externer Daten gibt.

Gruß
.
 
hey,
also ja, geht mir ansich nur darum, dass die daten bis zu frame 3 geladen sind.

habe anbei die functions.php - ist nicht großartig aber ja.

PHP:
<?
echo "picgrey=pic_grey.png&pic=pic.png";
?>

dadurch, dass die seite erst ganz am anfang steht ist es einfach nur mal so rein geschrieben und noch nicht wirklich daten vorhanden etc.

wie du siehst, lädt er einfach nur diese bilder für das movie. also im endeffekt doch pics.

hab leider keine ahnung wie ich das anstellen soll, dass er mir das bevor es im film weiter geht die daten geladen sind.

bitte um hilfe.

lg securid
 
Hi,

probiers doch mal so:
Code:
if (prozent == "100 Prozent" && picgrey != undefined) {
Damit läuft Dein Preloader mindestens so lange, bis die Variable "picgrey" eingeladen wurde.

Gruß
.
 
hey,

danke für deine antwort, nur ist es ja jetzt so, dass der preloader so lange läuft bis das phpfile dem flash sagt, dass picgrey = pic_grey.png ist, aber nicht wartet, dass das image wirklich geladen ist.

zumindest, taucht es erst irgendwann auf, wenn ich es mit einer langsameren verbindung teste und nicht gleich beim start.

weisst du vielleicht noch eine andere lösung?

habe folgenden tipp bekommen:

PHP:
this.stop();
this.LoadVarsObject = new LoadVars();
this.LoadVarsObject.load("functions.php");
this.LoadVarsObject.onLoad = loaded;
function loaded(success)
{ 
  if(success)
  { 
    _root.play();
  }
}

jedoch funktioniert das auch nicht.

bitte um rat.

lg securid
 
In dem Fall musst Du natürlich auch darauf warten, dass das Bild komplett geladen ist. Du hast nicht erwähnt (oder den Code gepostet), wo und wie dieses Bild geladen wird, daher ging ich davon aus, es ginge nur um die Variablen.

Wenn es darum geht, mehrere größere Dateien (swfs, Bilder) gemeinsam zu laden: Such mal im Forum nach "Multiloader"; unter dem Namen habe ich hier mehrere Versionen eines Preloaders gepostet, der mehrere Dateien vorlädt.

Gruß
.
 
Hy,

Habe mir jetzt den multiloader_v5 gesaugt.
Echt spitze, nur habe ich das Problem, dass ich die Bildnamen gegen Variablen aus der Datenbank tauschen will.

Ich bekomm das aber nicht hin.

Anbei das AS vom Preloader
PHP:
stop();
var pics = new Array("pic_grey.png", "pic.png");
this.onEnterFrame = function() {
 loader.preload(pics);
 delete this.onEnterFrame;
 
}

Kannst du mir helfen?

lg alex
 
Hi,

mach Dich mit dem LoadVars- (oder dem XML-) Objekt vertraut und mit dem Format, in dem Du Datei mit einem PHP-Script ausgeben musst, damit sie mit ersterem geladen werden können. Details und Beispiele dazu findest Du in unseren Flash-FAQ, im Sammelthread und mithilfe der Suchfunktion hier im Forum.

Gruß
.
 

Neue Beiträge

Zurück