PDA

Volledige versie bekijken : probleempje met variabelen inladen


jkrielaars
%Europe/Berlin %482 %2005, 12:34
Ik zit met het volgende probleem:
Ik moet een hele rij variabelen inladen die vanuit een php file komen. Ik wil pas dat mijn swf verder speelt als alle variabelen geladen zijn. Daarom is de laatste variabele die de php file geeft altijd hetzelfde, namelijk geladen=1

Mijn flash filmpje heeft als 1e frame de volgende actie:
loadVariables("vars.php", this);

het 3e frame heeft de volgende actie:
if (geladen==1)
{
gotoAndPlay("fashion",1);
}
else
{
gotoAndPlay(2);
}

Nou dacht ik dat ie zodra de laatste variabele is ingeladen door zou moeten spelen (geladen is immers 1)
Hij komt echter niet voorbij de if-loop, hij word eeuwig teruggestuurd naar frame 2.
De variabele "geladen" word wel geladen, want deze heb ik bij wijze van test even laten weergeven in frame 2. Na een tijdje word ie echt 1.

Ik denk zelf dat het iets met de typen te maken heeft, dus ik zie ergens quotes over het hoofd, maar wat ik ook probeer, het lukt me niet.

Iemand die me even kan helpen?

output van mijn php file->
&serie_naam_1=series://1e serie ...bla bla ... &geladen=1


Jasper

Roenes
%Europe/Berlin %507 %2005, 13:10
if(geladen == "1"){}

Aangezien je waarde uit een phpfile komt, komt deze als string binnen. Maar je kunt hiervoor beter de LoadVars classe gebruiken. Deze heeft een onLoad functie waarbinnen je kan afvangen wanneer je data binnen is :)

Laiverd
%Europe/Berlin %507 %2005, 13:10
Ingeladen variabele waarden komen altijd als String binnen (nooit meer vergeten ;) ), maar je checkt nu een Number. Het zou moeten werken als je checkt met if(geladen == "1")

John

jkrielaars
%Europe/Berlin %521 %2005, 13:31
Daar heb ik ook al aan zitten denken, en ik heb dus ook al geexpirimenteerd met die quotes, maar ook als ik dat doe pakt ie het niet op een of andere manier....

Laiverd
%Europe/Berlin %523 %2005, 13:34
Doe eens een trace op this! En zet ook eens een trace in je if statement om te zien of ie daar echt niet komt; je lijkt gotoAndPlay(scenenaam, framenummer) te gebruiken en dat werkt maar zelden goed (zie alle topics over dit probleem uit het verleden). Als je dus alleen maar visueel checkt of de playhead wel naar dat frame gaat, hoeft dat dus niks te zeggen over je if statement, het kan net zo goed op het probleem van het gebruik van scenenamen duiden. Overigens is de suggestie van Roenes om over te stappen op LoadVars() i.p.v. loadVariables() echt een goede, die je veel hassle kan besparen. Je kunt je dan in elk geval een frameloop en gedoe met geladen = 1 besparen.

John

jkrielaars
%Europe/Berlin %541 %2005, 13:59
ik ga voor de LoadVars....
Deze heeft een onLoad functie waarbinnen je kan afvangen wanneer je data binnen is Wist ik niet... ik ga eens googelen ;)

Laiverd
%Europe/Berlin %543 %2005, 14:01
Ik zou gewoon beginnen met de as-dictionary. Daar staan wel werkende voorbeelden in. En anders kun je altijd nog http://home.hccnet.nl/john.mulder/flash/tutorials/flash_external_data_1.zip proberen.

John