Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 18-09-2005, 17:01   #1 (permalink)
Lukas Merl
 
Benutzerbild von mer/l\ukas
 
Registriert seit: Sep 2004
Ort: Henndorf/Salzburg
Beiträge: 94
Flash-Film aktualisieren

Also mein Problem ist, dass wenn ich meine Flash-Website update, wird immer die im Cache gespeicherte Version (die alte V.) angezeigt.
Für mich ist das kein Problem, weil ich ja meinen eigenen Cache löschen kann, aber meinen Besuchern kann ich das nicht zumuten.
Problematisch wirds vor allem bei der Anzeige von dynamischen Daten.

Meine Frage also:
Gibt es eine Möglichkeit eine bestimmte Flashdatei aus dem Cache des Benutzers zu löschen, um die aktuelle Version anzuzeigen?

Thx
__________________
lg lm

www.lukasmerl.at
mer/l\ukas ist offline   Mit Zitat antworten
Alt 18-09-2005, 17:16   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Zitat:
Zitat von mer/l\ukas
Gibt es eine Möglichkeit eine bestimmte Flashdatei aus dem Cache des Benutzers zu löschen, um die aktuelle Version anzuzeigen?
Hallo!
Denke mal kaum, dass das geht. Aber du kannst beim Öffnen der Datei eine Zufallszahl anhängen, so dass Flash nicht auf den Cache zugreift.

edit > Zum Beispiel so:
ActionScript:
  1. dein_mc.loadMovie("film.swf?"+new Date().getTime())
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++

Geändert von Der Frager (18-09-2005 um 17:20 Uhr)
Der Frager ist offline   Mit Zitat antworten
Alt 18-09-2005, 18:32   #3 (permalink)
Lukas Merl
 
Benutzerbild von mer/l\ukas
 
Registriert seit: Sep 2004
Ort: Henndorf/Salzburg
Beiträge: 94
Zitat:
dein_mc.loadMovie("film.swf?"+new Date().getTime())
Aber dann findet er am näöchsten Tag den film nicht mehr, wenn ich nicht bis dahin ein update gemacht hab.
Kann ich nicht irgendwie verhindern, dass der film überhaupt in den cache kommt?
__________________
lg lm

www.lukasmerl.at
mer/l\ukas ist offline   Mit Zitat antworten
Alt 19-09-2005, 11:40   #4 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890

Wieso sollte Flash den Film am nächsten Tag nicht mehr finden? Du hängst beim Laden ja nur eine Zahl an. Den Name des Films änderst du nicht. Verhindern, dass der Film in den Cache kommt, kannst du übrigens nicht.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 19-09-2005, 13:27   #5 (permalink)
Lukas Merl
 
Benutzerbild von mer/l\ukas
 
Registriert seit: Sep 2004
Ort: Henndorf/Salzburg
Beiträge: 94
ich dachte wenn man eine Zahl anhängt sucht er nach dem Dateinamen + Zahl.
ich glaub ich habs jetzt aber schon verstanden
Danke
__________________
lg lm

www.lukasmerl.at
mer/l\ukas ist offline   Mit Zitat antworten
Alt 19-09-2005, 19:15   #6 (permalink)
Lukas Merl
 
Benutzerbild von mer/l\ukas
 
Registriert seit: Sep 2004
Ort: Henndorf/Salzburg
Beiträge: 94
Funzt leider nicht so wie du mir das geschrieben hast.
__________________
lg lm

www.lukasmerl.at
mer/l\ukas ist offline   Mit Zitat antworten
Alt 20-09-2005, 13:44   #7 (permalink)
FlashKrieger
 
Benutzerbild von hadoken
 
Registriert seit: Apr 2004
Ort: Erde
Beiträge: 94
Was der frager geschrieben hat funktioniert einwandfrei, allerdings nicht beim testen des Films innnerhalb von Flash. Die Zahl nach den Fragezeichen sorgt nur online auf deinem Server dafür, dass dir dann immer die aktuelle swf nachgeladen wird ohne den Browser-Cache vorher zu löschen!

Geändert von hadoken (20-09-2005 um 13:46 Uhr)
hadoken ist offline   Mit Zitat antworten
Alt 12-01-2006, 22:02   #8 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 13
Hilfe in selbiger Sache!

Hallo!

Ich habe das gleiche Problem, allerdings nur mit firefox.
Ich will das die swf nach einer aktualisierung neu geladen wird,
wird sie aber nicht.

hier mal mein quelltext der html datei in der das swf geladen wird:

<body leftmargin="0" topmargin="0">
<object classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="870" height="452">
<param name="movie" value="codered.swf">
<param name="quality" value="high"><param name="LOOP" value="false">
<embed src="codered.swf" width="870" height="452" loop="false" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"></embed></object>


ich kenne mich nicht allzugut mit den befehlen usw. aus, nur etwas.


kann jemand den quelltext evtl. so verändern das die codered.swf nicht mehr aus dem cache geladen wird oder aber nur dann, wenn sie nicht neuer auf dem server liegt?


das wäre so super, ich eier an dem schrott schon den ganzen tag rum!
silversback ist offline   Mit Zitat antworten
Alt 13-01-2006, 11:04   #9 (permalink)
FlashKrieger
 
Benutzerbild von hadoken
 
Registriert seit: Apr 2004
Ort: Erde
Beiträge: 94
Hi & willkomen im FF!

Wie oft möchtest/musst du denn die swf etwa aktualisieren?
Die simpelste Methode ist jedes mal den Dateinamen und die Referenz im object-Tag zu ändern, also z.B.

<param name="movie" value="codered.swf">
ändern in -->
<param name="movie" value="codered2.swf">

<embed src="codered2.swf" ... nicht vergessen!

Wenn man swf's nachlädt, ist das was der Frager dazu schon geschrieben hat bestens geeignet, vorallem weil man nicht bei jeder Aktualisierung einer swf Dateinamen und Object-Tag-Quelltext ändern muss...

lg hadoken
hadoken ist offline   Mit Zitat antworten
Alt 13-01-2006, 12:53   #10 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 13
ok, danke. ich will die swf schon jede woche mindestens ein mal aktualisieren. da ist die möglichkeit immer den dateinamen und den embed tag zu ändern schon sehr umständlich. kannst du mir die version mit dem datum auf mein beispiel übertragen und nochmal erklären, ich versteh das noch nicht so ganz.
vielen dank!
silversback ist offline   Mit Zitat antworten
Alt 13-01-2006, 14:00   #11 (permalink)
FlashKrieger
 
Benutzerbild von hadoken
 
Registriert seit: Apr 2004
Ort: Erde
Beiträge: 94
Ist eigentlich ganz einfach:

du erstellst eine loader.swf, in dieser einen conatianerMC, in den du dann die immer aktuelle swf reinladen kannst. Die Zahl funktioniert nur online, nicht in der Testumgebung von FlashMX. Um die loader.swf in der Testumgebung offline zu Testen musst du das Fragezeichen und die datumszahl mal rausnehmen, also nur containerMC.loadMovie("film.swf");

Beispiel anbei.

es kann halt sein, je nachdem wie du gescripted hast, das absolute Pfadangaben, die sich auf _root beziehen in deiner codered.swf nicht mehr funktionieren, is ja auch klar, alles was in der codered.swf mal auf _root lag, liegt jetzt in _root.containerMC...
Angehängte Dateien
Dateityp: zip laodmovie.zip (7,9 KB, 18x aufgerufen)
hadoken ist offline   Mit Zitat antworten
Alt 13-01-2006, 16:31   #12 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 13
dateien in flahs8?

hallo!

kann deine dateien leider nicht in flash öffnen.
ich benutze flash mx 2004.
kannst du sie in diesem format nochmal reinstellen?

Danke!!!
silversback ist offline   Mit Zitat antworten
Alt 13-01-2006, 16:58   #13 (permalink)
FlashKrieger
 
Benutzerbild von hadoken
 
Registriert seit: Apr 2004
Ort: Erde
Beiträge: 94
also ich kann mit Flash8 problemlos meine MX-Dateien öffnen, mit Mx2004 sollte das auch gehen

zur Sicherheit hier aber gleich der code aus der loader.fla:

loader.fla, 1 Frame, ebene 1
PHP-Code:
//Zufallszahl
var zahl =new Date().getTime();

//Kontrollausgabe
trace ("Zahl: "+zahl);

//ContainerMC erstellen
createEmptyMovieClip("container",1);

// dein codered.swf in den ConatainerMC laden!!!
container.loadMovie("codered.swf?"+zahl);

stop(); 
mehr isses eigentlich nich...

im Anhnag die fla's aus F8 als MX2004 gespeichert...
Angehängte Dateien
Dateityp: zip loadmovieMX2004.zip (9,0 KB, 8x aufgerufen)
hadoken ist offline   Mit Zitat antworten
Alt 13-01-2006, 17:18   #14 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 13
ok, es hat geklappt!
schon mal sehr gut!! danke!

jetzt funktioniert halt der preloader in der codered.swf nicht mehr...
muss ich irgendwie austüfteln.

der preloader muss ja jetzt in die loader.swf,
wie mache ich es das er die codered.swf als grundlage nimmt und nicht die loader.swf?
hier der code meines preloaders:

bytes_gesamt = _root.getBytesTotal() add " Bytes gesamt";
bytes_geladen = _root.getBytesLoaded() add " Bytes geladen";
prozent = int(_root.getBytesLoaded()*100/_root.getBytesTotal()) add " Prozent";
if (prozent == "100 Prozent") {
gotoAndPlay ("start");
}

Geändert von silversback (13-01-2006 um 17:27 Uhr)
silversback ist offline   Mit Zitat antworten
Alt 13-01-2006, 21:26   #15 (permalink)
FlashKrieger
 
Benutzerbild von hadoken
 
Registriert seit: Apr 2004
Ort: Erde
Beiträge: 94
_root.getBytesTotal() und _root.getBytesLoaded() beziehen sich ja auf die loader.swf, wenn du dein prelaod-script in der loader.fla platziert hast.
Da die zu ladende codered.swf im mit createMovieClip() erstellten MovieClip "container" geladen wird, teste doch mal was dir
PHP-Code:
trace(container.getBytesTotal()); 
ausgibt....

genau so das gotoAndPlay("start");. Dein preload-script liegt auf _root von loader.swf, wenn du von dort den inhalt von container der auch auf _root liegt zum abspielen bringen willst:
PHP-Code:
container.gotoAndPlay("start"); 
_root. ist die Referenz auf die Hauptzeitleiste, in deinem Fall die der loader.fla
hadoken ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 10:10 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele