Home > Flash > Flash: Variablen aus einer Textdatei laden

Flash: Variablen aus einer Textdatei laden

In dynamischen Webseiten werden Flash Objekte eingesetzt, welche in der Regel auch dynamische Texte beinhalten. Die Daten, welche zur Anzeige gebracht werden sollen, können entweder in einer Datenbank oder aber in einer einfachen Textdatei wie *.txt, *.csv oder in einem anderen Dateiformat liegen und müssen in den Flash Film zuerst als Variablen geladen werden. Der Text wird nach dem Laden an ein dynamisches Textfeld übergeben und kann somit im Movie angezeigt werden.

Für das Auslesen einer Datei wird in dieser Variante ein kleines Actionscript benötigt. Die LoadVars Klasse erlaubt in ActionScript 2.0 das Laden von Parametern im URL kordierten Format aus einem Textfile. Die Parameter in der jeweiligen Textdatei liegen als String vor, ähnlich wie bei der Übergabe von GET Variablen an ein PHP Script (zum Beispiel ?site=parameter&parameter=123). Zuerst erstellen wir also eine *.fla Datei und platzieren im ersten Bild einen dynamischen Text. Diesen Feld weisen wir den Instanznamen „my_txt“ zu.

In unserer Textdatei „http://localhost/daten.php“ laden wir per PHP Script die für uns benötigte Daten aus einer MySQL Datenbank. Die Datei, welche von unseren Webserver ausgeführt wird, hat bei Aufruf folgenden Inhalt:

[code]
vorname=Max&nachname=Mustermann&email=mail@maxmustermann.de
[/code]

Anschließend fügen wir in Flash im gleichen Bild folgenden Action Script Code hinzu:

[code]
// zuerst legen wir eine neus LoadVars Objekt an
meineVariablen = new LoadVars();

// wir rufen nun die URL auf, welche unsere Parameter liefert
meineVariablen.load("http://localhost/daten.php");

// nach dem Laden sind die Variablen aus der PHP-Datei abrufbar:
// meineVariablen.vorname
// meineVariablen.nachname
// meineVariablen.email

// Daten dem Textfeld zuweisen
my_txt.text = meineVariablen.vorname + ‚ ‚ + meineVariablen.nachname + ‚ ‚ + meineVariablen.email;
[/code]

Die Variablen sind wie oben im Codebeispiel zu sehen zum Beispiel mit „meineVariablen.vorname“ abrufbar. Wie man sieht, muss man für den Abruf die selben Parameter Namen aus dem Textfile verwenden. Man sollte auch auf Umbrüche in der Textdatei achten. Auch Leerzeichen und Umbrüche werden an Flash übergeben und landen in den Flashvariablen.

Wir können auch die onLoad Funktion nutzen, um unser ActionScript noch mit einer if / else Abfrage besser zu steuern:

[code]
meineVariablen.onLoad = function(success) {
if(success) {
trace("Variablen geladen");

// hier folgt dann die Verarbeitung der Daten …
// …

} else {
trace("Fehler: Variablen konnten nicht geladen werden.");
}
}
meineVariablen.load("http://localhost/daten.php");
[/code]

Interessant zu wissen ist, dass die onLoad Methode der Klasse LoadVars von der Methode onData angestoßen wird. onData ist eine weitere Funktion dieser Klasse. Ein weiterer Tipp: Beim Testen in der Flash IDE sollte man die URL zur ladenden Datei als absoluten Pfad angeben. Anderenfalls wird Flash die PHP Datei als reine Textdatei laden, ohne das diese vom Webserver geparst werden kann.

  1. Bisher keine Kommentare
  1. Bisher keine Trackbacks