View Full Version : Viewers do not see updates flash unless they delete cache
CoDaXe
06-01-2005, 02:51 AM
Viewers do not see updated flash unless they delete cache
Well yes taht is the problem?
Is there a way i can fix it using html manipulations?
Or do i really have to give my file a new name everytime i update.
Flash Gordon
06-01-2005, 03:43 AM
there is a way not to make it load from the cache. I don't know how but that would be one option.
oldnewbie
06-01-2005, 03:55 AM
That may depend on each user's browser cache settings... But you can always append a specific random number to your .swf's name in your .html, to force the browsers to always get a fresh file from the server.
oldnewbie
06-01-2005, 04:04 AM
Or.... You might want to have a look at these...
http://www.macromedia.com/cfusion/knowledgebase/index.cfm?id=tn_14743
http://www.mnot.net/cache_docs/
farafiro
06-01-2005, 11:22 AM
http://www.mnot.net/cache_docs/nice link, thanks
merlinvicki
06-03-2005, 12:30 PM
Those docs on caching never work.......
Even I had this problem since i have a website which is information based, and is updated quite frequently. I had to make the user download the flash directly from server and not the cache.
After several failed attempts this javascript code helped me out:
<script type="text/javascript">
<!--
document.write('<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="990" height="540" id="home.swf" ALIGN="">');
document.write('<PARAM NAME=movie VALUE="home.swf?r=' + Math.round(Math.random() * 99999) + '"> <PARAM NAME="quality" VALUE="high"> <param name="menu" value="true" /> <param name="wmode" value="transparent" /> ');
document.write('<EMBED src="home.swf?r=' + Math.round(Math.random() * 99999) + '" quality=high menu="true" WIDTH="990" HEIGHT="540" NAME="home.swf" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED>');
document.write('</OBJECT>');
//-->
</script>
You can also take a look at the code on my website. Its better organised. Just change the filenames, height and width properties.
:)
farafiro
06-05-2005, 06:59 AM
merlinvicki
the MM's solution should work perfectly, just note this
Note: the Pragma: No-Cache header does not work with Internet Explorer 5. Microsoft recommends using the Cache-Control header, instead. See Microsoft's article (http://support.microsoft.com/support/kb/articles/Q234/0/67.ASP) on this subject.
merlinvicki
06-06-2005, 10:10 AM
More from MIcrosoft:
http://support.microsoft.com/kb/222064/
Pragma: no-cache prevents caching only when used over a secure connection. A Pragma: no-cache META tag is treated identically to Expires: -1 if used in a non-secure page. The page will be cached but marked as immediately expired.
I also think u need to turn off caching from the IIS for this purpose...
Have u ever tried it yourself. I dont know what I was doing wrong when I was trying this but the page cached everytime and used to load from the temp on reloads.
After a lot of research I first used the above javascript to create a random temp file everytime my website was reloaded. Then I found out about people turning off javascript so then I just converted the same into a PHP. Its running fine now with no implied promises....
:rolleyes:
garion1
11-10-2005, 09:33 AM
Hi merlinvicki
Thanks for the javascript. Could you please tell me exactly where in my HTML code it should go and if it should replace any existing code.
I am publishing my HTML file with Flash.
Thanks
oldnewbie
11-10-2005, 01:22 PM
You'd replace the Object & Embed tags (changing the .swf's name and all appropriate values in the movie's parameters... width & height, color, etc...) in your .html (within the <body> tag) with what Merlinvicki posted above...
Or you could use a first preloader only movie to load your "website.swf", appending a number to your loadMovie action, in the manner described further above.
merlinvicki
11-10-2005, 03:13 PM
Hi merlinvicki
Thanks for the javascript. Could you please tell me exactly where in my HTML code it should go and if it should replace any existing code.
I am publishing my HTML file with Flash.
Thanks
If you are not accustomed to writing HTML: Publish your html and post here. I will make the modifications for you.
Regards
garion1
11-10-2005, 09:29 PM
Hi merlinvicki
Thanks. I am having trouble here. All I get now is the attached empty scrollpane!? on my screen. I published the HTML file with Dreamweaver.
Please check my code...
__________________________________________________ _____________
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Mymovie</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
-->
</style></head>
<body>
<div align="center">
<script type="text/javascript">
<!--
document.write('<OBJECT classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="766" height="604" id="Mymovie.swf" ALIGN="middle">');
document.write('<PARAM NAME=movie VALUE="Mymovie.swf?r=' + Math.round(Math.random() * 99999) + '"> <PARAM NAME="loop" value="false" /> <PARAM NAME="menu" value="false" /> <PARAM NAME="quality" VALUE="high" /> ');
document.write('<EMBED src="Mymovie.swf?r=' + Math.round(Math.random() * 99999) + '"WIDTH="766" HEIGHT="604" NAME="Mymovie.swf" ALIGN="middle" loop="false" menu="false"
quality="high" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED>');
document.write('</OBJECT>');
//-->
</script>
</div>
</body>
</html>
__________________________________________________ _____________
merlinvicki
11-11-2005, 05:59 AM
Hi merlinvicki
Thanks. I am having trouble here. All I get now is the attached empty scrollpane!? on my screen. I published the HTML file with Dreamweaver.
Please check my code...
__________________________________________________ _____________
Hi, Test this code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Mymovie</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
-->
</style>
</head>
<body>
<div align="center">
<script type="text/javascript">
<!--
document.write('<OBJECT classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="766" height="604" id="Mymovie.swf" ALIGN="">');
document.write('<PARAM NAME=movie VALUE="Mymovie.swf?r=' + Math.round(Math.random() * 99999) + '"> <PARAM NAME="quality" VALUE="high"> <param name="menu" value="true" /> ');
document.write('<EMBED src="Mymovie.swf?r=' + Math.round(Math.random() * 99999) + '" quality=high menu="true" WIDTH="766" HEIGHT="604" NAME="Mymovie.swf" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED>');
document.write('</OBJECT>');
//-->
</script>
</div>
</body>
</html>
garion1
11-11-2005, 02:33 PM
Thanks. I'll try.
vBulletin® v3.7.1, Copyright ©2000-2009, Jelsoft Enterprises Ltd.