Cache umgehen

tam

Grünschnabel
Hallo,
ich habe ein kleines Spiel in Flash programmiert und habe dafür nun eine einfache Speicherung der Highscore in einer txt-Datei auf dem Server realisiert. Das Abspeichern einer neuen Highscore in diese txt-Datei funktioniert über den Aufruf eines php-Scripts, das auf dem Server liegt, ohne Probleme.
Das Laden der aktuellen Highscore dagegen funktioniert nicht so gut:
loadVariables("http://server/highscore.txt");
Das Problem ist nämlich, dass diese highscore.txt wohl irgendwo im Cache hängt. In meinem InternetExplorer, meinem Router oder meinem Proxy. Aber das ist ja eigentlich auch egal wo, da ich ja nichts an diesen Geräten/Programmen ändern will, sondern Flash dazu veranlassen will unter allen Umständen eine aktuelle Version der Datei anzufordern.
Wenn ich in meinem Spiel die Highscore neu einlade, kommt die alte. Wenn ich im InternetExplorer auf aktualisieren klicke, kommt die alte. Wenn ich auf ne andere Seite gehe und dann zurück gehe, kommt auch die alte Highscore. Es kommt erst die neue, wenn ich den IE komplett geschlossen und die URL des Spiels neu eingeben habe.
Nun habe ich von einem Trick gelesen gehabt, der bei mir aber nicht funktioniert. Und zwar tut man so, als würde man der highscore.txt Variablen übergeben, was zur Folge hätte, dass der IE eine neue highscore.txt anfordert:
loadVariables("http://server/highscore.txt?dummyvariable=egalwas");
Wie gesagt, klappt aber nicht. Dann habe ich mir gedacht, ich mache mit einem Zufallsgenerator tatsächlich verschiedene URLs daraus:
loadVariables("http://server/highscore.txt?dummyvariable="+random(100000));
Das klappt dann in 50% der Fälle. Aber warum Denn bei ausführlichen Tests und einem random von 100000 ist die Chance das die selbe URL angefordert wird ja wohl auf die Dauer nicht 50%.

Irgendwie bin ich auf dem Holzweg und weiss nicht mehr weiter. Ich bedanke mich jetzt schon mal für eure Hilfe.
 
Hi,

loadVariables("http://server/highscore.txt?Date="+ new Date ().getTime ());

sollte es tun ... denn Gott würfelt nicht.....

Gruss
B
 
Zuletzt bearbeitet:
Ja Danke, so hat es funktioniert! Wenn ich ehrlich bin, weiss ich zwar nicht, warum das auf meine Art nicht funktioniert hat (ist evtl. der random-Befehl von Flash nicht ganz in Ordnung?), aber ich bin erstmal total froh, dass das hier jetzt endlich klappt. thx
 
Für den Computer ganz allgemein gibt es keinen Zufall, nur verschiedene Methoden diesen zu simulieren, Flash macht es sich dabei jedoch ziemlich einfach, indem es einem festen Laufzeit-Algorithmus folgt - wenn deine Zufallsfunktion unbehandelt bleibt, hast du in einem Quiz zB immer dieselbe Reihenfolge an Fragen, WENN die Auswahl der Fragen immer zur selben Laufzeitsekunde des FIlms erfolgt, nicht aber, wenn die Auswahl der nächsten Frage nach Beantwortung der letzten erfolgt - > schön nachzulesen in ActionScript / Das Praxisbuch von Matthias Kannengiesser im Franzi´s Verlag.....

Grüsse
B
 
Zurück