Fonction loadVariables

loadVariables(url:String, target:Object [, method:String]) : Void

Lit les données dans un fichier externe, tel qu'un fichier texte ou du texte généré par ColdFusion, un script CGI, des pages ASP (Active Server Pages), PHP ou un script Perl et définit les valeurs pour les variables dans un clip cible. Cette action permet également de mettre à jour les variables du fichier SWF actif en fonction des nouvelles valeurs.

Le texte de l'URL spécifiée doit être au format MIME standard application/x-www-form-urlencoded (un format standard utilisé par les scripts CGI). Vous pouvez spécifier autant de variables que nécessaire. Par exemple, cette séquence définit plusieurs variables :

company=Macromedia&address=600+Townsend&city=San+Francisco&zip=94103

Pour les fichiers SWF lus par une version antérieure à Flash Player 7, l'url doit correspondre au superdomaine du fichier SWF envoyant cet appel. Un superdomaine est dérivé en supprimant le composant le plus à gauche de l'URL d'un fichier. Par exemple, un fichier SWF enregistré dans www.someDomain.com peut charger des données à partir d'une source figurant dans store.someDomain.com, car les deux fichiers appartiennent au même superdomaine que someDomain.com.

Dans les fichiers SWF, quelle que soit leur version, qui s'exécutent dans Flash Player 7 ou version ultérieure, url doit figurer dans le même domaine que le fichier SWF qui envoie cet appel (voir « Fonctions de sécurité de Flash Player » dans le guide Utilisation d'ActionScript dans Flash). Par exemple, un fichier SWF situé à l'adresse www.someDomain.com peut charger des données en provenance de sources qui figurent également à l'adresse www.someDomain.com. Si vous souhaitez charger des données à partir d'un autre domaine, vous pouvez placer un fichier de régulation interdomaines sur le serveur hébergeant le fichier SWF en cours d'accès. Pour plus d'informations, voir « A propos de l'autorisation de chargement de données interdomaines » dans Utilisation d'ActionScript dans Flash.

Si vous souhaitez charger des variables dans un niveau spécifique, utilisez loadVariablesNum() à la place de loadVariables().

Disponibilité : ActionScript 1.0; Flash Lite 1.1 - Comportement modifié dans Flash Player 7.

Paramètres

url:String - Une URL absolue ou relative par rapport à l'emplacement des variables. Si le fichier SWF effectuant cet appel s'exécute dans un navigateur Web, url doit appartenir au même domaine que le fichier SWF. Pour plus de détails, consultez la section Description.

target:Object - Le chemin cible d'un clip devant recevoir les variables chargées.

method:String [facultatif] - Spécifie une méthode HTTP d'envoi des variables. Ce paramètre doit correspondre à la chaîne GET ou POST. En l'absence de variable à envoyer, omettez ce paramètre. La méthode GET ajoute les variables à la fin de l'URL et est utilisée lorsque les variables sont peu nombreuses. La méthode POST place les variables dans un en-tête HTTP distinct et s'applique aux variables longues de type chaîne.

Exemple

L'exemple suivant permet de charger les informations d'un fichier texte intitulé params.txt dans le clip target_mc créé à l'aide de createEmptyMovieClip(). La fonction setInterval() permet de vérifier la progression du chargement. Le script recherche une variable dans le fichier params.txt appelé done.

this.createEmptyMovieClip("target_mc", this.getNextHighestDepth());
loadVariables("params.txt", target_mc);
function checkParamsLoaded() {
 if (target_mc.done == undefined) {
 trace("not yet.");
 } else {
 trace("finished loading. killing interval.");
 trace("-------------");
 for (i in target_mc) {
 trace(i+": "+target_mc[i]);
 }
 trace("-------------");
 clearInterval(param_interval);
 }
}
var param_interval = setInterval(checkParamsLoaded, 100);

Le fichier externe, params.txt, inclut le texte suivant :

var1="hello"&var2="goodbye"&done="done"

Voir aussi

Fonction loadVariablesNum, Fonction loadMovie, Fonction loadMovieNum, Fonction getURL, loadMovie (méthode MovieClip.loadMovie), loadVariables (méthode MovieClip.loadVariables), load (méthode LoadVars.load)