2009-12-04 11 views
0

Je voudrais passer plus de 50 éléments de variables de php à flash. En fait, je veux passer tableau avec foreach déclaration, en boucle à travers le tableau et en affectant l'indice de boucle aux variables et flash à nouveau accepter les valeurs PHP en boucle. Est-ce possible?Utilisation de FlashVars pour transmettre des variables à un fichier SWF

Si passer des valeurs à travers foreach ou une instruction de boucle est impossible, je voudrais casser une nouvelle ligne dans la balise. comment puis-je casser une nouvelle ligne dans le tag FlashVars?

+0

merci pour toutes vos réponses. En fait, je passe la chaîne en implosant array en php et utiliser split() en flash. le problème principal est que les params que j'envoie au flash ont plus de 20. Donc je veux casser une ligne pour le tag . J'ai essayé d'utiliser deux balises FlashVars mais seule la première ligne de FlashVars peut être récupérée en flash. Comment puis-je faire?? – SoeTheingiLin

Répondre

2

Vous pouvez transmettre les valeurs comme une chaîne séparées par des virgules (à condition que les valeurs ne dispose pas de virgules, bien sûr) - cette façon, vous pouvez les faire dans un tableau en flash en utilisant string.split(",");

+0

Merci beaucoup, Amarghosh! Je passe la chaîne en implosant array en php et utilise split() en flash. le problème principal est que les paramètres que j'envoie au flash ont plus de 20. Donc je veux casser une ligne pour le tag . J'ai essayé d'utiliser deux balises FlashVars mais seule la première ligne de FlashVars peut être récupérée en flash. Comment puis-je faire?? plz pardonnez-moi si ma question est si stupide. Je suis vraiment perdu !! merci pour votre aide. – SoeTheingiLin

+1

Afaik, vous ne pouvez pas avoir plus d'un flashvars. Quel est le problème avec le nombre de params ayant plus de 20 ans? Est-ce que cela brise ou êtes-vous juste préoccupé par la lisibilité du code html ainsi généré? – Amarghosh

0

Si vous pensez que cette pousse les flashvars au-delà de sa limite, vous pourriez envisager de renvoyer une requête HTTP à votre page PHP depuis le SWF et lui envoyer toutes les données que vous voulez.

0

avec autant de balises que vous pourriez envisager d'utiliser un URLLoader ou ExternalInterface appel pour obtenir les informations d'une fonction ou d'une page, sinon vous pouvez juste pousser une liste ensemble quelque chose comme ceci: présumant varArray de $ est le tableau de vars que vous voulez passer

PHP: 
    $flashvars = ""; 
    $init = true; 
    for($i = 0; $i<count($vararray); $i+=1){ 
    if($init == true){ 
    $init=false; 
    } 
    else{ 
    $flashvars.=& 
    } 
    $flashvars.="var$i=".$value; 
    } 

puis utilisez la chaîne flashvars de $ pour les flashvars intégrer et exécuter à travers le réseau loaderInfo.Parameters en flash

0

Ou honnêtement il suffit d'utiliser XML - qui est probablement la meilleure façon de charger que de nombreuses variables.