dnomada, si es posible hacer lo que pides. Tampoco es necesario llamar directo al SWF, puedes ponerlo como normalmente lo harías en cualquier HTML, y dentro para pasarle variables, tendrías que hacer lo siguiente:
Código HTML :
<div align="center">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="900" height="530" align="absmiddle">
<param name="movie" value="flash.swf?file=algo" />
<param name="quality" value="high" />
<param name="bgcolor" value="#FFFFFF" />
<embed src="flash.swf?file=algo" quality="high" bgcolor="#FFFFFF" width="900" height="530" align="absmiddle" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</div>
Con eso le pasamos al flash una variable, que debemos recoger de la siguiente forma:
Código ActionScript :
_root.file
Si puedes usar PHP sería ideal, porque puedes hacer algo como esto:
Código PHP :
<head>
<?php
$file = $_GET['file'];
?>
<script src="scripts/func.js" language="javascript"></script>
</head>
<body>
<div align="center">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="900" height="530" align="absmiddle">
<param name="movie" value="flash.swf?file=<?php echo $file ?> "/>
<param name="quality" value="high" />
<param name="bgcolor" value="#FFFFFF" />
<embed src="flash.swf?file=<?php echo $file ?>" quality="high" bgcolor="#FFFFFF" width="900" height="530" align="absmiddle" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</div>
</body>
</html>
De esta forma puedes pasarle los valores de tu site directo al Flash desde la URL:
Código :
www.url.com/quiz.php?file=algo.xml
Otra buena idea, sería poner las diferentes configuraciones en un archivo inicial de carga XML, algo como:
Código XML :
<configs>
<quiz>quiz1.xml</quiz>
<quiz>quiz2.xml</quiz>
<quiz>quiz3.xml</quiz>
<quiz>quiz4.xml</quiz>
</configs>
Y luego llamar en vez de file= a una variable id, algo como:
Código :
www.url.com/quiz.php?id=1
De esta forma puedes luego resolver una carga en tu .SWF que cargo los paths del quiz, luego tomas la variable id=1 (_root.id), y la usas para leer un array:
Código ActionScript :
var xml_path:String = path_server+Config_Arr[_root.id];
Si lo quieres un poco más seguro aun, puedes correlacionar además un código en la carga del XML:
Código XML :
<configs>
<quiz>
<path>quiz1.xml</path>
<code>927n28723</code>
</quiz>
</configs>
De esta forma puedes pasar el code, que lo resuelves finalmente en que quiz realmente es. Evitando que un usuario normal pueda andar leyendo quiz que no le corresponden.
Aunque claro, la otra opción es más segura, puedes cargar en DB y no en XML tu config.
Espero te ayude.
Saludos, Hernán . -