Flash variable ausgeben

Borsty

Mitglied
Flash Shared Objects // Cookies // lokale DB

Hallo alle zusammen.
Ich erstelle hier gerade ein kleines Lernspiel für Kinder und möchte das der Name und die Anzahl der richtigen Antowrten, die jeweils in einer Variable liegen, später in einer Datenbank oder änlichem zusammengefasst werden.
Erst dachte ich an eine Textdatei! Und irgendeine PHP oder HTML Datei liest den Inhalt dieser Textdatei aus und gibt sie grafisch wieder. (für den Lehrer).
Bin auch für einen andere Lösung zu haben, nur helft mir ;-)
 
Zuletzt bearbeitet von einem Moderator:
Hi,

Du kannst mit Flash ohne weiteres keine Dateien speichern. Du kannst die Daten (Variablen) aber an ein PHP-Script schicken, wo sie verarbeitet und gespeichert werden.

Such mal hier im Forum nach "LoadVars", oder schau in die Flash-Dokumentation. ;)

Gruß

.
 
wenn ich PHP verwende brauche ich aber auch eine richtige Datenbank ,oder? das ohne einen "wahren" Server?

Unter load Vars finde ich in der Hilfe nur Möglichkeiten Daten einzulesen!
 
Zuletzt bearbeitet:
Einen Server (lokal oder online) brauchst Du zum Ausführen eines PHP-Scriptes natürlich. Eine Datenbank ist immer nett, aber nicht unbedingt nötig; einfache Textdateien tun es auch, obwohl das oft nicht so komfortabel ist.

In Deinem ersten Post hast Du eine Datenbank (und PHP) erwähnt; deshalb bin ich davon ausgegangen, dass serverseitige Scripte kein Problem für Dich darstellen.

Gruß

.
 
Wenn es sich nur um einen physischen Rechner handelt, auf dem sowohl der Schüler schült als auch der Lehrer lehrt, dann kannst du das ganze elegant mit Local Shared Objects machen - wenn das der Fall ist , einfach nochmal fragen ...

Grüsse
B
 
hi,

schau zum Beispiel einfach hier ; http://www.tutorials.de/forum/showthread.php?t=17569&highlight=SharedObjects

Da hast du ein funktionierendes Beispiel, wie man Daten lokal speichert und später wieder abrufen kann - und das alles ohen eine Zeile PHP - es ist allerdings auch keine vollwertige Datenbank, sondern nur ien besseres Textfile, aber immerhin - in Verbindung mit dem LoadVars Objekt kannst du eigentlcih alles realisieren, was du brauchst ...

Grüsse
B
 
Also das hört sich gut an, wollte es auch gleich mal ausprobieren, geht aber nicht
Code:
stop();

// Variable für die Anzahl der Fragen und die richtig beantworteten Fragen
/*
var score = 0;
var anzahl = 0;
*/

//Erzeugen des SO-Objekts
fsLoc = sharedobject.getLocal("fscookie" );

//Prüfen ob Cookie bereits vorhanden
if (fsLoc.data.name != null) {
	bname.text = fsLoc.data.name;
} else {
	bname.text = "#Name Bitte !#";
	fsLoc.data.zaehler = 1;
}

fsLoc.data.zaehler++;

// Sichern
sSchalter.onRelease = function () {	
	fsLoc.data.name = bname.text;
}

// Los Button um zu Bild 10 zu gelangen
/*
this.button.onRelease = function(){
		gotoAndStop(10);
		}
*/

wo ist der Fehler? Ich möchte ja nur den Namen der in bname eingegeben wird beibehalten. Und so oft ich auch auf sSchalter drücke es wird einfach nicht gespeichert! :(
 
Hi,

mag sein, dass ich jetzt Blödsinn rede (ich habe die SharedObjects selbst noch nicht eingesetzt), aber m.E. wird das Objekt erst dauerhauft gespeichert, wenn Du die Methode "SharedObject.flush()" aufrufst.

Zudem ist auch die Flash-Hilfe manchmal etwas nachlässig mit der Groß- und Kleinschreibung: SharedObject wird gemäß der Konvention für Objekte und Klassen mit Großen Anfangsbuchstaben geschrieben.

Gruß

.
 
wo muss ich das flush einbinden
Ich habe gelesesn die Datei muss in dem selben Ornder liegen wie der Player
Wo muss ich die Speichern

In einem anderen Beispiel, aus dem Inet, es wunderbar:
Code:
stop();

// Datum
z = new Date();
zeit = z.getDate() +"/"+ z.getMonth() +"/"+ z.getFullYear() +" ("+ z.getHours() +":"+ z.getMinutes() +")";

//Erzeugen des SO-Objekts
fsLoc = sharedobject.getLocal("fscookie" );

//Prüfen ob Cookie bereits vorhanden
if (fsLoc.data.name != null) {
	bname.text = fsLoc.data.name;
	besuche.text = "Sie waren " + fsLoc.data.zaehler + " mal hier."
	bdatum.text = fsLoc.data.datum;
} else {
	bname.text = "#Name Bitte !#";
	besuche.text = "Dies ist Ihr erster Besuch !";
	bdatum.text = zeit;
	fsLoc.data.zaehler = 1;
}

fsLoc.data.zaehler++;

//Alles Löschen
lSchalter.onRelease = function () {	
	fsLoc.data.name = null;
	fsLoc.data.zaehler = null;
	fsLoc.data.datum = null;
	bname.text = "#Name Bitte !#";
	besuche.text = "Dies ist Ihr erster Besuch !";
	bdatum.text = zeit;
}

// Sichern
sSchalter.onRelease = function () {	
	fsLoc.data.name = bname.text;
	fsLoc.data.datum = bdatum.text;
}

// Automatisch Werte sichern
/*
bname.onChanged = function() {
	fsLoc.data.name = bname.text;
	fsLoc.data.datum = bdatum.text;
}
*/

Nur ich bekomme das nicht hin, obwohl ich es genau gleich mache!
 

Neue Beiträge

Zurück