PDA

Volledige versie bekijken : PHP, Flashvars, animatie maar 1x tijdens een sessie


sanderH
%Europe/Berlin %866 %2005, 21:47
Hallo,

In deze thread http://www.flashfocus.nl/forum/showthread.php?t=2701 heb ik hulp gevraagd met het éémalig draaien van een openings animatie (www.ayersrookies.nl) .
Ik dacht eerst dat ik "SharedObject" moest gebruiken, maar het bleek toch alleen maar mogelijk te zijn dmv PhP en FlashVars.

Na een hoop gezoek en gevraag ben ik er helemaal uitgekomen.
Vandaar dat ik de resultaten even post. Ik hoop dat andere mensen hier ook wat aan hebben.
Ik hoop dat het een beetje duidelijk overkomt ;)

mijn php bestand "index.php" is als volgt.
<?
session_start();
$newsession = 0;
if (isset($_SESSION['NewSession'])) {
$newsession = $_SESSION['NewSession'];
}
$_SESSION['NewSession'] = 1;
?>


en daarachter de html



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>ayersrookioes</title>
</head>
<body bgcolor="#ffffff">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="740" height="100" id="ayersrookioes" align="middle">
<PARAM NAME="FlashVars" VALUE="test=<?=$newsession?>">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="ayersrookioes.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<embed FlashVars="test=<?=$newsession?>" src="ayersrookioes.swf" quality="high" bgcolor="#ffffff" width="740" height="100" name="ayersrookioes" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</body>
</html>

let op dat bij de "param" en de "embed" tag gebruik wordt gemaakt van FlashVars
Deze geven de variabele $newsession door aan mn swf (als test=0 of 1)
De PHP en de HTML komen samen in het index.php bestand te staan.

Wat gebeurd er nu als de html de 1e keer wordt gegenereerd?
de variabele "$newsession" krijgt de waarde "0"

Als de pagina wordt gerefreshed krijgt de variabel "$newsession" de waarde 1
Je kan dit checken door naar deze link (www.ayersrookies.nl) te gaan. Je ziet dat als je de 1e keer in de source kijkt dat bij flashvars: test = 0 staat. als je na het refreshen in de source kijkt zie je bij flashvars: test = 1

Nu kan ik vrij eenvoudig in Actionscript "test"aanroepen dmv _root.test

en aan de conditie 0 of 1 hang ik mijn animatie
if (_root.test == 1)

Ik hoop dat dit een beetje een duidelijke uitleg was.
Groetjes Sander

4nkyst4r
%Europe/Berlin %696 %2006, 16:42
geniaal script! had wel nog een vraagje: ik heb bovenin een php pagina een swf-menu staan, waar ook submenu's in zitten. Als ik nu op een link in het submenu klik herlaad de php pagina en staat het menu weer in begin-stand zeg maar.
Kan ik dit ook op zo'n zelfde manier oplossen?