Poppe25Medlem sedan apr. 2002255 inlägg Jag har problem med att lyfta in variabler från PHP-dokument till Flash. Jag har en sessionsvariabel, som när en ny sida med en flashfilm öppnas ska tas emot i Flash.
Jag använder nu javascript:
<!--
function doPassVar(){
var sendNamn = '<?echo $HTTP_SESSION_VARS['inloggnamn']?>';
window.document.myFlash.SetVariable("myVar", sendNamn);
}
//-->
I Flash har jag skrivit in myVar på VAR för ett dynamiskt textfält. Ett problem är nu hur jag ska trigga doPassVar så att den skickar datan. Jag har försökt med en knapp:
on(press){
getURL("javascript:doPassVar()");
}
Jag har också försökt med <body onLoad="doPassVar();"> utan framgång. Vore mkt tacksam för hjälp.
Känns som om det skulle vara enklare om du använde FlashVars.
Nått sånt här typ:
<object ..... blah blah blah>
<param name="flashvars" value="&myVar=<?echo $HTTP_SESSION_VARS['inloggnamn']?>">
... blah blah.....
<embed Flashvars="&myVar=<?echo $HTTP_SESSION_VARS['inloggnamn']?>'" .... blah blah.....>
</object>
Då skall myVar finnas på huvudtidslinjen från och med bildruta 1(Kom ihåg att inte tilldela myVar på bildruta 1) innehållandes datan du skrev ut med PHP som en sträng.
Du kan även hänga på variabeln som en querystring efter filnamnet på din swf:
filmen.swf?myVar=data
/Mirandir
Poppe25Medlem sedan apr. 2002255 inlägg Fungerar det?
Det skulle i så fall vara lösningen på min bekymmer.
Hur menar du exakt att jag fångar upp variabeln sedan. Har lärt mig att det är så lätt att göra fel, att jag vore tacksam för ett kodexempel.
variabeln kommer att finnas på filmens huvudtidslinje("_root" ) och ha samma namn som variablenamnet du satte i FlashVars förutom &-tecknet då...
I exemplet ovan så kommer det alltså att finnas en variabel på huvudtidslinjen som heter "myVar" och innehåller det du skrev in som en sträng.
Eftersom denna variabel sätts innan första bildrutan på tidslinjen så är det viktigt att variabeln inte initieras i början (exempelvis: 'var myVar = "";')
Skickar med ett exempel. Kolla i htmlFilen efter FlashVars och ändra dessa till vad du vill och se att innehållet i textfälltet i flash ändras.
/Mirandir